sbt-assembly:跳过特定测试

时间:2014-03-18 13:43:00

标签: sbt sbt-assembly

我想配置sbt-assembly以跳过特定的测试类。

有没有办法做到这一点?如果有帮助,我使用ScalaTest @Network标记标记了测试。

4 个答案:

答案 0 :(得分:4)

Additional test configurations with shared sources。这允许您在重用测试源时在FunTest配置中提出替代“测试”任务。

使用fun:test testOptions in FunTest := Seq(Tests.Filter(itFilter))使用您定义的任何过滤器后,您可以重新连接

test in assembly := test in FunTest

答案 1 :(得分:1)

尤金是对的(显然),但这并不足以让我让它发挥作用 - 我有一个build.scala文件。我这样定义baseSettings

     val baseSettings = Defaults.defaultSettings ++ 
                        buildSettings ++  
                        Seq(sbt.Keys.test in assembly := {})

答案 2 :(得分:0)

您可以使用ignore标记测试,然后sbt / ScalaTest不会运行它们。请参阅Tagging tests上的ScalaTest文档。

为了完整起见,如果您想跳过汇编任务中的所有测试或仅运行特定测试,您可以使用test in assembly := { ... }

自定义它

答案 3 :(得分:0)

基于@ eugene-yokata的回复,我发现了如何使用ScalaTest中的标志:

const get = <T extends Record<K1, any>, K1 extends keyof T>(key1: K1) =>
    (record: T) => record[key1];

const foo = { bar: 1, baz: 2 }
get<typeof foo, keyof typeof foo>('bar')(foo)