私はリファクタリングを行い、phpunitテストを追加するかなり皮肉なPHPアプリケーションを持っています。アプリケーションの一般的な状況は、誤った設定(アプリケーションが構成ファイルを取り込み、画像とHTMLを出力として生成する)に対するユーザーの警告メッセージです。 PHPunit - ユーザのエラー状態(例外ではない)をテストするためのベストプラクティス
は、だから私は同様だアプリケーションを介して振りかけコードの束を持っている:wm_warnは標準エラー出力または文脈に応じて、ログファイルのいずれかに書き込みwm_warn("You can't make a contrast with 'none' - guessing black. [WMWARN43]\n");
。
これらの警告をphpunitでどのようにテストできますか?
重要:これは致命的なエラーではないため、AFAIKは例外に置き換えてphpunitの「予想される例外」機能を使用することはできません。
これはwm_warn模擬のユースケースですか?または標準エラーをキャプチャしますか?あるいは、別のロギング方法を使用してテストを簡単にする(例えばlog4php)?
ありがとうございました。現在のログ関数は実際の関数ですが、ログオブジェクトのメソッドを簡単に呼び出すことができます(すべてをフォールディングして、後でログオブジェクトへの直接呼び出しにすることができます)。 – AnotherHowie
@AnotherHowie聞いてうれしいのはあなたのために働くことができます! – Katie