2012-02-15 13 views
6

私は単体テストで実際のファイルを作成したくありません。だから私はしばしばナンセンスの定型文を使って を修正し、疑似ファイル用のモックファクトリを作成することに気付いています。モンキーパッチはユニットテストのための組み込み関数ですか?

open = lambda x: StringIO() 

これはOKだろう:(この例では)これらの無意味な努力を避けるために、よりよいとローカルユニットテスト方法の範囲内のような 何かをしようとしないならば、私は を不思議でしたか?または、このアプローチでは大きな注意点がありますか?問題はありません。 of mock-factories?

答えて

4

これは、pythonスコープがどのように機能するかを理解していれば問題ありません。つまり、ローカルで問題なく、グローバルに問題が発生します。

あなたは、あなたのモンキーパッチがオリジナルとは違った故障モードを持ち、コードが組み込み関数と正しく相互作用することを確認するための適切なテストがあると考えるべきでしょう。

関連する問題