テストが完了したらデータをクリーンアップすることについて多くの質問がありました。彼らの多くは、実際のデータベースの使用を避けるためにデータベースを模擬し、テストが終わったらそれをきれいにすると言っています。それが私が行っていることとうまくいくかどうかは分かりません。UI受入れテスト後に追加されたレコードをデータベースに整理する
WebUI用にSeleniumを使用し、テストランナー用にNUnitを使用して、.NetにSpecFlowを使用しています。
アプリケーション自体は、大規模なマルチページのWebアプリケーションです。
SpecFlowの機能はページ機能で区切られていますが、ほとんどのページに作成されたレコードが表示されている表がない場合はほとんどの場合です。 Ex。新しいカテゴリを作成し、そのページに追加されたカテゴリを表に表示します。これらのテストを何度も実行するには、テストがデータベースから作成した追加されたレコードをすべて削除して、テストが再開されたときに同じカテゴリを再作成する必要があります。
データベースから追加されたレコードを削除するために、ストアドプロシージャで渡される各機能の後に実行するスケルトン設定があります。テスト環境で異なるテストクライアントのレコードを削除するリスクがあるため、このアイデアには多くのプッシュバックがありました。
私の質問は、データベースをクリーンアップするベストプラクティスは何ですか?
申し訳ありませんが、テストやライブデータを意味することを心配しています、あなたは株式は、テストデータを本番クライアントデータを生きたデータベースを使用していますか? – AlSki
さて、申し訳ありませんが、生産に入る前のすべての環境にプロダクションクライアントデータがありません。ただし、これらのテストをprodで実行したい場合は、テストクライアントがデータベースを共有します。私たちはまだそのレベルにはいませんので、実際にはまだ決定されていません。 –