リクエスト(本体POST経由)と一緒に渡されたファイルを特定のパスweb/images
の下にコピーしているコントローラがあります。パスは、特定のController
に属するプロパティによって指定されます。ファンクションテストでファイルコピーを模擬する方法
私は何をしたいことは機能テストでそれをテストしているが、私はそれは私のプロジェクト内のファイルを上書きしたくないので、私のテストケースを送信する前に私がvfs
を使用するか、パスを変更したいですリクエスト。
これを行うには良い方法がありますか?
* "私のプロジェクトのファイルを上書きするのは気に入らない" * - これは間違っているように聞こえる。この目的のためだけに使用されるディレクトリ(最初は空)にコードが書き込まれていることを確認してください。そして、あなたは本番環境でテストを実行しませんか?最後に、もしあなたが* "義務がファイルをコピーしているコントローラ"をテストしたいのであれば、*私はファイルシステムを嘲笑せず、実際のものを使う方が良いと思います。それ以外の場合は、何をテストしますか?モックの行動? – axiac
これは部分的に真です。テストする必要があるかどうかは、テストする必要があるかどうかによって決まります。私たちの考え方を変えてみましょう:) コントローラの義務が特定のパスに置かれたファイルを上書きし、gitが元のデフォルトファイルをトレースする場合、私はテストしたいです*コントローラーは、指定されたパスに従ってファイル*を置き換えますが、私は親愛なる古いオリジナルのデフォルトのファイルに触れないようにします。欠落しているのは、テスト環境と品質環境でテストできる元のパスです。しかし、TDDの開発では、このテストはOK以上の可能性があると思います。私はとにかく動作をテストしています – Bertuz