1

MongoDB データベースを使用する asp.net MVC アプリケーションを入手しました。SpecFlow と Selenium WebDriver を使用して自動テスト (BDD) を行っています。URL に移動したり、アクリオンを作成したりする前に、データベースを特定の状態に初期化したいと考えています。それは可能ですか?

4

1 に答える 1

1

それは可能ですか?

はい!

私は次の方法でそれを行いました:

1.テストが初期化されるとき - テストデータベースを生成します (ドライバーを介した最も簡単な方法で)。

users.Insert(new User(){ Id: "1", userName: "testUser" })

2.バックアップを作成します(これにはmongodumpを使用しました)

3.テストを開始する前に、一意の名前 myApp_tests_guid でデータベースを作成します。データベース名をどこかに保管してください。

4.データベースの復元(mongorestore)

5.テストの終了時または失敗の場合 -- データベースを削除します。

6.一部の特定のテストのオプションの手順は、共通のテスト データベースをテスト固有のデータで調整することです。

それでおしまい。バックアップ/復元のアプローチを使用した理由は、パフォーマンスです。また、テストでは、セーフ モードとジャーナリングが無効になっていることを確認してください。これにより、作業が高速化されます。

于 2012-10-29T21:32:49.180 に答える