2013-07-30 50 views
1

我知道我可以使用Tests.Filter(s => s.endsWith("Test"))过滤哪些测试运行。是否有可能让SBT尊重Scalatest的DoNoDiscover注释?

但是,Scalatest(我确定其他测试框架)有一个@DoNotDiscover注释,用于直接运行框架。

我想知道,有没有办法让SBT认识到这个注释?

感谢

编辑:我刚刚发现Tests.Filter(s => s.endsWith("Test"))是不是我想要的。我有一些测试不应该在詹金斯跑。当我输入sbt test时,我希望这些测试不运行。但是,如果直接调用sbt test-only some.test,我希望这些测试运行。

回答

2

我想你不能ScalaTest 1.x中做到这一点,最新2.0.M6-SNAP36应该有它的支持虽然:

https://oss.sonatype.org/content/groups/public/org/scalatest/scalatest_2.10/2.0.M6-SNAP36/

+0

我使用2.0.M6-SNAP20。我会升级并看看会发生什么 – Nacht

+0

所以这实际上使得sbt理解注解,但是我不能用'test-only some.test'运行特定的测试。也许我只是要求太多:D。哦,标记为答案,因为它确实回答了它。 – Nacht

+0

根据@DoNotDiscover的scalatest文档,[如果明确询问,Scalatest应该能够运行带注释的测试](http://www.artima.com/docs-scalatest-2.0.M5b/index.html#org.scalatest。 DoNotDiscover)。所以我认为这可能是另一个Scalatest to sbt bug – Nacht

相关问题