2012-02-27 14 views
2

私はScala Webアプリケーションで統合テストを行うためにセレンを使用しています。テストが失敗するたびに、スクリーンショットを表示したり、ページのhtmlをコンソールに表示したりしたいと思います。私の現在のセットアップは、Selenium 2.0を使ったScalatestで、Spec。Scalatestの失敗時に特別な機能を実行

エラーを傍受したり、AfterEachオーバーライドメソッドからテストの状態を判断したりする方法はありますか?

答えて

6

これを行うには、BeforeAndAfterEachを使用する代わりにFixtureをオーバーライドする必要があります。 BeforeAndAfterEachのbeforeEachメソッドはテストの前に発生し、afterEachはテストの後に発生します。 withFixtureは、テストの開始時および/または終了時に何かを行うことができます。したがってwithFixtureが呼び出されると、テストは既に開始されています。テスト機能がwithFixtureに戻ると、テストはまだ完了していません。したがって、withFixtureで例外をキャッチしてテストが失敗したかどうかを判断し、失敗した場合はスクリーンショットを作成することができます。