如何执行仅与正则expression式匹配的testing?

在0.10版本中,我经常使用test-only来缩小我的testing数量。

 sbt> test-only com.example.MySpec 

但是,我想缩小范围,只运行名称/描述与正则expression式匹配的testing。 有没有一些语法来实现这样的事情?

 sbt> test-only .*someRexExp.* 

完整的正则expression式不被testOnly支持。 但是,支持通配符。

 sbt> testOnly com.example.*Spec 

这里只有星号*被解释,而不是句号。 这将select以com.example.开头的所有testingcom.example. 并以Spec结尾。

或者只是所有的testingSpec

 sbt> testOnly *Spec 

testOnly和其他testing信息logging在这里: http : //www.scala-sbt.org/release/docs/Detailed-Topics/Testing

通过使用特定于框架的runner参数,您可以按testing用例的名称(而不是套接字类名称)进行匹配。 ScalaTest 支持与-z参数的子string匹配 :

 > testOnly -- -z insert > testOnly *TreeSpec -- -z insert 

这将以“插入”的名义运行所有的testing,然后只有以TreeSpec结尾的套件中的匹配情况,就像直觉一样。 您也可以使用-n TagName-l TagName分别包含或排除ScalaTest标记支持中的标记,并使用-t来匹配确切的testing名称。

Specs2 支持带有-ex参数的完整Java正则expression式 :

 > testOnly -- -ex ".*someRexExp.*" 

-include-exclude支持Spec2的标签function。

查看内联链接,查看跑步者支持的完整参数列表。 这些似乎只适用于testOnly sbt命令,而不是test