すべてのタスクは、マージされる前に自動的にテストされます。範囲を絞ったユニットテストと、実行中のアプリを操作するより広範なエンドツーエンドテストの両方です。Testing ビューには、個々のタスクとは無関係に、プロジェクトのテストが表示されます。

テスト

タスク詳細でのテスト

タスクの詳細ビューでは、Test ステップにプロジェクトのユニットテストの結果(成功数、失敗数、失敗した場合はその出力)が表示され、E2E ステップにエンドツーエンドシナリオの結果、つまり実際に動作しているアプリケーション上での模擬ユーザー操作の結果が表示されます。Test または E2E が失敗した場合、Fix ステップに失敗の詳細が渡され、問題の修正を試みた後、テストが再び実行されます。これは自動的に数回繰り返されることがあります。許容された試行回数の後もテストが失敗する場合、タスクは failed となり、失敗の詳細はタスクに添付されたまま残ります。

Testing ビューとそのタブ

デフォルトでは、Testing ビューには3つの内部タブがあります。History — Dashboard、History — Modules、Unit Tests です。その他のタブ(Setup、Dashboard、Verdicts、E2E Plans、Scenarios、Integration Tests、Release Tests、E2E Cockpit)も存在しますが、ナビゲーションのカスタマイズで有効にするまで非表示になっています。

Testing ビュー
デフォルトのテスト履歴タブを備えた Testing ビュー。

Unit Tests タブ

Unit Tests タブには、Run unit tests ボタン、最後の実行の合計(成功、失敗、スキップ)、Run History テーブル(日付、成功、失敗、合計、所要時間)があり、右側には、選択した実行の個々のテストが Passed や Failed などのフィルター付きで表示されます。Run History で実行をクリックするとそのテストが一覧表示され、Failed に絞り込むと、失敗した各テストのエラーを確認できます。完了しなかった実行には crashed と理由、および Ask AI to fix ボタンが表示されます。

実行履歴と失敗したテストを表示した Unit Tests タブ
Unit Tests タブ:実行履歴と、選択した実行の失敗したテスト。

Verify の判定

テストの後、Verify ステップがタスクの各受け入れ基準を再確認し、次の3つの判定のいずれかを記録します。

  • passed — チェックが実行され、期待どおりだった。
  • failed — チェックが実行されたが、期待と一致しなかった。出力には、何を実行し、何を期待し、何が返ってきたかが記載されます。
  • unverifiable — チェックをまったく実行できなかった(たとえば、利用できない実行中のインスタンスが必要な場合)。これによってタスクが失敗することはなく、その項目は手動での検証待ちとして一覧に載ります。

Build & Start/Stop

プロジェクトのビルドを実行し、その実行中のインスタンスを専用のポートで起動または停止できます。これは、タスク中にパイプラインが E2E テスト用に立ち上げる分離されたインスタンスとは独立しています。

ライブステータスとターミナル出力

インスタンスが実行中か、ビルド中か、停止中かが一目で分かり、ターミナル/コンソールの出力をライブでストリーミング表示できます。ビルドが成功したことの確認や、失敗した理由の診断に役立ちます。

実行中のテストの停止

長時間かかるユニットテストスイートは、完了を待たずに、Testing ビューからいつでも直接停止できます。テストの実行中に AITM サーバーが再起動された場合、実行は安全に中断されます。次回の起動時に「running」状態のまま残ることはなく、サーバーがそれを検出して解除します。

テスト用の CPU/RAM 合算予算

ユニットテストと E2E テストは、AITM が動作するサーバーの規模に自動的に適応する、CPU とメモリの共通の予算を共有します。テストは順次実行されるため、合計のリソース使用量がホストに過負荷をかけることはありません。これにより、複数のテスト負荷を同時に実行することで起きるクラッシュを防ぎます。

E2E 判定の履歴

このプロジェクトに対して記録されたエンドツーエンドテストの実行はすべて、Verdicts タブ(デフォルトでは非表示)に、その判定(pass、feature bug、environment error など)とともに保存されます。タイムラインをさかのぼって、テストの健全性が時間とともにどう推移してきたかを確認できます。

バグインジケーターのドロップダウン

トップバーのバグインジケーターのドロップダウンには、最新のバグが最大10件まで表示されるため、バグ履歴の長いプロジェクトでも高速で読みやすさが保たれます。最近の項目の一覧が空であっても、Open Bug Section リンクは常に表示されます。そのため、ドロップダウンが行き止まりになることはなく、最近の項目がいくつあっても、バグの全一覧にいつでも1クリックで移動できます。

ヒント

  • 積極的にテストしていないときは、プロジェクト自身のインスタンスを停止しておきます。そうすることでポートが解放され、パイプラインの分離された E2E インスタンスが使えるようになります。
  • テストスイート全体を再実行する前に、E2E 判定の履歴を確認してください。過去の環境エラーが、実際にはコードのバグではない失敗の原因かもしれません。