コマンドラインインターフェイスからすべてのテストケースの代わりに、iOSアプリのテストターゲットから個別のテストケースまたは個別のテストスイートを実行することは可能ですか?
コマンドラインから xcodebuild を使用して、すぐにテストを実行できます。その場合、選択したテストターゲットに含まれるすべてのテストケースを実行します。
Fastlaneの scan を使用して行うこともできますが、選択したビルドスキームのすべてのテストの実行に制限されていると思います(上記)。xcodebuildと同じです。
Facebookから xctool を使用して特定のテストを実行できますが、xcodebuildを使用せず、シミュレーターのみでの実行に制限され、実際のiOSテストデバイスでは実行できません。
xctest コマンドラインユーティリティを直接実行するためのリファレンスを見つけましたが、ドキュメント化されていない機能であり、DerivedDataをターゲットにしているようです。これは、UIテスト * xctestファイルが別のXCTRunnerバンドルにある であるという事実によって複雑になっています。
Xcode 8では、xcodebuild
で-only-testing
パラメーターを使用することが可能になりました。
xcodebuild test -workspace <path>
-scheme <name>
-destination <specifier>
-only-testing:TestBundle/TestSuite/TestCase
このビデオを確認してください: https://developer.Apple.com/videos/play/wwdc2016/409/
私はあなたと同じような状況にあり、私が望むテストケースのセットをトリガーするpythonスクリプトを作成しました。 DataProviderメソッドの実装、失敗したテストケースの再実行、および必要なその他のカスタマイズを徐々に行いました。
あなたが達成したいものに関連するいくつかのステップ。
さらに情報が必要な場合は、コメントを追加して返信します。
-only-testing:<MyXCTargetForTest>/<MyTestSuite>/<MyTestMethod>
たとえば、Test Navigator
のように見える
パラメータには次のタイプがあります
-only-testing:SampleAppTest/SampleAppTest/testExample
また、次を使用してテストをスキップできます:-skip-testing
続きを読む こちら