私はいくつかのレガシーコードの統合テストを書いています。関数が期待どおりに動作するように、私は偽のデータをセットアップし、テストAPIを呼び出し、データをクリーンアップする必要があります。DAOの統合テストに「実削除」メソッドを追加すべきですか?
は、ポリシーの理由のため、私たちはHibernateとMyBatisの、決して直接接続のようなツールを介してデータベースにアクセスすることができます。ただし、DAOを上の私たちのdelete()
方法は、(。すなわち、is_delete
フラグをオン)、常にソフト削除スタイルのあるので、クリーンアップは、実際にはis_delete
フラグをオンにし、偽のデータがまだそこにあります!
だから、私は統合テストのためのDAOの「リアル・削除」メソッドを追加するか、この問題に対処するための良い方法はありますでしょうか?結局、統合テストの点は仕方、彼らが実際に使用される彼らをエミュレートするための努力で一緒にすべてのコンポーネントをテストすることである - 本当のdeleteメソッドを追加すると間違って何もありません