2016-05-19 8 views
2

私は通常、ユニットテストは外部システムやデータに依存しない完全に自己完結型でなければならないということを知っています。ユニットファイルのテストデータを外部ファイルに保存する

しかし...

私はその性質上(文字列として)JSON/XMLデータの非常に大きな量を返す特定のメソッドの結果を提供してモックを書きたいです。このシナリオでは、単体テストプロジェクトの一部であるテキストファイルにデータを正当に格納できますか、これは厳密にはまだ統合テストですか?

答えて

0

はい、テキストファイルに保存できますが、それでも単位テストになります。 (ただし、好ましくは、私がテストコード自体にテキストを配置することをお勧め、すでにない限りは、ファイルにそれを持っている、またはテキストが本当に大きいです。)ユニットテストを差別何

インテグレーションからのテストは、ファイルシステムやその他の外部リソースに触れるかどうかではありません。異なる点は、ユニットテストが単一のユニットの動作/状態を検証することのみを目的とするかどうかである。または複数の相互依存ユニット。後者の場合、統合テストがあります。

ユニットテストそれが依存する他のユニットまたはシステムのコードを実行します。しかし、それらの他のユニットは、彼らの行動を検証することなく、期待通りに動作すると仮定するべきです。ユニットテストのもう1つのアプローチは、テストされたユニットをモックや偽装によって依存から隔離することです。どちらの方法も有効です。

関連する問題