当前位置: 首页 > 知识库问答 >
问题:

SBT不编译位于自定义测试源文件夹中的测试

姚胡媚
2023-03-14
sourceDirectories in Test := baseDirectory { base =>
  Seq(
    base / "src/test/common/scala",
    base / "src/test/unit/scala",
    base / "src/test/functional/scala"
  )
}.value
sbt test:sourceDirectories
...
[info] Set current project to service (in build file:/myprojectfolder/)
[info] * /myprojectfolder/src/test/common/scala
[info] * /myprojectfolder/src/test/unit/scala
[info] * /myprojectfolder/src/test/functional/scala

共有1个答案

岑元徽
2023-03-14

谢谢manuzhang的有用意见。事实上,以下变化起到了作用:

而不是

sourceDirectories in Test := baseDirectory { base =>
  Seq(
    base / "src/test/common/scala",
    base / "src/test/unit/scala",
    base / "src/test/functional/scala"
  )
}.value

我用过

unmanagedSourceDirectories in Test := baseDirectory { base =>
  Seq(
    base / "src/test/common/scala",
    base / "src/test/unit/scala",
    base / "src/test/functional/scala"
  )
}.value
 类似资料:
  • 我有一个自定义任务定义来运行每个测试具有特殊设置的特定测试文件。我的任务定义如下: 现在,此设置中的一些测试是不可靠的,我尝试再次运行它们,如下所示: 我编写了一个测试类,第一次总是失败,第二次总是成功: 不幸的是,测试只执行一次,整个测试套件失败。我可以使用中所述的自定义规则成功运行测试https://stackoverflow.com/a/55178053/6059889 有没有办法将测试重试

  • 我尝试通过maven->clean和project->clean来清理我的项目,但没有效果。我尝试在构建路径下显式更改输出文件夹,但不确定为src/test/java选择什么 并且我得到了在类路径错误中找不到TestNG类: 早些时候,这段代码运行良好。我只是尝试通过更改maven项目的工件id来调整项目,然后就无法继续了。

  • 如何使目标“包”依赖于目标“测试”? 这里有一个解决方案:强制sbt 0.11运行测试,但它实际上不适用于xsbt web插件。

  • 问题内容: 我创建了自定义的 Elasticsearch 插件。现在,我想为此插件编写一个测试。我的期望是-我可以运行嵌入式 Elasticsearch 实例,对其进行正确设置,然后进行一些测试(对一些文档进行索引,然后对其进行查询) 问题是我无法正确设置插件 自定义插件代码正在解析JSON查询并设置一些对象供以后使用: 测试代码: 我已经为 pathToPlugin 尝试了多个值-但似乎没有什么

  • 我有一个文件夹结构: 我通过发出以下命令来运行测试: 因此,我所有的测试都来自文件正在运行。 我想运行一个单一的测试从文件。 “测试代码”的内容。这些是: 关于运行单个测试有一个问题:从unittest运行单个测试。通过命令行测试用例。 答案是: 就我而言(我想): 不幸的是,这会导致一个错误: ImportError:没有名为“src”的模块 有人评论说,如果测试位于子目录中,建议的方法不起作用

  • 我观察到每次发出“编译”任务时,SBT都会编译所有源文件,而不管上次编译后的时间戳如何。以下是我的build.sbt文件: 以下是我的项目结构(忽略的项目和目标目录): 出于测试目的,这两个源文件只是空的对象定义。 当我输入“sbt编译”时,我得到了以下信息: 我可以在目标目录中找到新编译的类文件。 没有修改任何源文件,一分钟后,再次键入“sbt compile”,我得到了相同的信息和类文件,只是