Sbt 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
テストでcasesを framework-specificを使用して、(スイートクラス名の代わりに、またはそれに加えて)名前で照合できます。ランナー引数 。 ScalaTest は、-z
引数を使用した部分文字列の一致 をサポートします。
> testOnly -- -z insert
> testOnly *TreeSpec -- -z insert
これは、名前に「挿入」を含むすべてのテストを実行し、次に、最初のTreeSpec
で終わるスイート内の一致するケースのみを実行します。また、-n TagName
および-l TagName
を使用して、ScalaTestのタグ付けサポートからタグを含めたり除外したりできます。また、-t
を使用して、正確なテスト名と一致させることもできます。
Specs2 は、-ex
引数を使用して、完全なJava正規表現 をサポートします:
> testOnly -- -ex ".*someRexExp.*"
-include
および-exclude
は、Spec2のタグ付け機能をサポートしています。
ランナーがサポートする引数の完全なリストについては、インラインリンクを参照してください。これらはtestOnly
sbtコマンドでのみ機能し、test
では機能しないようです。