7

PHPUnit テスト ケースからログ ステートメントを出力するためのベスト プラクティスは何ですか?

私はセレンのテストケースを実行していて、「ログインが完了しました」、「ページ XY が開かれました」などを出力したいと考えています。

必要なログファイルでそれらを確認したい。ログレベルを定義できればよいでしょう。

4

2 に答える 2

10

Selenium Server Loggingを使用することをお勧めします。必要なすべてのデバッグ情報が提供されます。

それがオプションではなく、テスト ケースからログを記録したい場合は、次のPHPUnit3 つのオプションがあります。

  1. ファイルまたはコマンド ライン引数 ( documentation )のいずれかを使用して構成できる、組み込みのログ機能 ( documentation ) を使用します。phpunit.xml
  2. インターフェースを実装して独自のロガーを作成します。これは、、、 、PHPUnit_Framework_TestListenerなどの限られた量のイベントのみをサポートするため、制限されています。サポートされているイベントの完全なリストについては、(ドキュメント) を参照してください。実装にさらにいくつかのイベントを追加することもできますが、そのためには、クラスをサブクラス化する(ドキュメント) か、インターフェイスを実装する(ドキュメント) ことによって、メソッドをオーバーライドする必要もあります。startTestendTestaddErroraddFailurePHPUnit_Framework_TestSuite::run()PHPUnit_Extensions_TestDecoratorPHPUnit_Framework_Test
  3. 最も簡単で柔軟なオプションは、PHPUnit_Framework_TestCaseクラスをサブクラス化し、そこにロギング機能を実装することです。これにより、テスト メソッド内からログを記録できます。(ドキュメント)
于 2012-11-21T12:34:50.270 に答える