Selenium を使用して、Scala Web アプリで統合テストを実行しています。テストが失敗するたびに、スクリーンショットを作成するか、ページの html をコンソールに出力したいと考えています。私の現在のセットアップは、Selenium 2.0 を使用した Scalatest であり、仕様は次のとおりです。
失敗をインターセプトしたり、AfterEach オーバーライド メソッドからテストの状態を判断したりする方法はありますか?
Selenium を使用して、Scala Web アプリで統合テストを実行しています。テストが失敗するたびに、スクリーンショットを作成するか、ページの html をコンソールに出力したいと考えています。私の現在のセットアップは、Selenium 2.0 を使用した Scalatest であり、仕様は次のとおりです。
失敗をインターセプトしたり、AfterEach オーバーライド メソッドからテストの状態を判断したりする方法はありますか?
そのためには、BeforeAndAfterEach を使用する代わりに withFixture をオーバーライドする必要があります。BeforeAndAfterEach の beforeEach メソッドはテストの前に発生し、afterEach はテストの後に発生します。一方 withFixture は、テストの開始時および/または終了時に何かを実行できます。したがって、 withFixture が呼び出された時点で、テストはすでに開始されています。テスト関数が withFixture に戻った後、テストはまだ完了していません。そのため、 withFixture で例外をキャッチして、テストが失敗したかどうかを判断し、失敗した場合はスクリーン ショットを作成できます。