在0.10.1中,我經常使用test-only
來縮小我的測試數量。如何執行僅與正則表達式匹配的測試?
sbt> test-only com.example.MySpec
但是,我想縮小範圍,使得我只運行其名稱/描述與正則表達式匹配的測試。是否有一些語法來實現這樣的事情?
sbt> test-only .*someRexExp.*
在0.10.1中,我經常使用test-only
來縮小我的測試數量。如何執行僅與正則表達式匹配的測試?
sbt> test-only com.example.MySpec
但是,我想縮小範圍,使得我只運行其名稱/描述與正則表達式匹配的測試。是否有一些語法來實現這樣的事情?
sbt> test-only .*someRexExp.*
完全正則表達式不testOnly
支持。但是,支持通配符。
sbt> testOnly com.example.*Spec
只有星號*
在這裏被解釋而不是句號。這將選擇以com.example.
開頭並以Spec
結尾的所有測試。
或者只是所有的測試Spec
S:
sbt> testOnly *Spec
testOnly
和其他測試信息記錄在這裏:http://www.scala-sbt.org/release/docs/Detailed-Topics/Testing
您可以通過他們的名字(代替或補充案件匹配測試套件類名稱)通過使用framework-specific runner arguments。 ScalaTest supports a substring match與-z
說法:
> testOnly -- -z insert
> testOnly *TreeSpec -- -z insert
這與運行「插入」在他們的名字,那麼只有在TreeSpec
結束的套房內匹配的情況下,你會直覺的所有測試。您還可以分別使用-n TagName
和-l TagName
來包含或排除ScalaTest標記支持中的標記,並使用-t
來匹配確切的測試名稱。
Specs2 supports full Java regular expressions與-ex
說法:
> testOnly -- -ex ".*someRexExp.*"
-include
和-exclude
支持SPEC2的標籤功能。
查看內嵌鏈接,獲取跑步者支持的參數的完整列表。這些似乎只適用於testOnly
sbt命令而不是test
。
另外值得一提的是,如果你想要這個,而不需要先輸入sbt,你必須在sbt:'sbt「testOnly - -z insert」 –
如果沒有(我懷疑它,如果它不起作用),這應該是SBT的錯誤跟蹤器中的功能請求,而不是在這裏。 – Raphael
我只能建議編輯你的項目文件,因爲它接受正則表達式。 –