symfony 1.xでは、いくつかのコードで、データベースを変更せずにtestを実行することができました。たとえば、私のテストの1つは、ユーザーの登録をテストします。このテストを実行すると、ユーザーは常にデータベースに入ります。 データベースを永久に変更せずにテストを実行するにはどうすればよいですか?テストでデータベースに影響を与えない
1
A
答えて
2
まず、各テスト後にデータベースをロールバックする方法を説明しているアレクサンドルの優れた記事があります(this)。
sqliteをテストデータベースとして使用することは、メモリー内にあるため、はるかに高速です。 This articleはこれを行う方法を説明しています。この方法は、オブジェクトの作成や編集など、テスト間のデータを処理する必要がある場合に便利です。これは良いpraticeではありませんが、時々回り道がありません。
私は、スピードのためにsqliteデータベースを持ち、すべてのテストの後に、Alexandreが記述したようにロールバックを行うスプリットアプローチを使用します。それは非常にうまくいく:-)
+0
ありがとうございました!私は最初のリンク(アレクサンドルサロメブログ)を使用し、それは動作します。私は教義に問題があります(doctrineで検索するエンティティの一部は「リンクされていません」:「新しいエンティティは関係を通じて見つかった...」)が、このスクリプトにリンクされていればいいです。 – bux
関連する問題
- 1. オーディオストリーミングに影響を与えないでページネーション?
- 2. Outlook Gmail Webviewerに影響を与える
- 3. レイアウトに影響を与えるCSSサブメニュー
- 4. は、背景色に影響を与え
- 5. 画像に影響を与えないようにする
- 6. Silverlight:アセンブリバージョンがApplicationSettengsに与える影響
- 7. 他のエレメントに影響を与えない高さを変更
- 8. パラメータに影響を与えない小文字のURL
- 9. ブラウザコンソールエラーがクライアント側の動作に影響を与えない
- 10. 状態に影響を与えないReduxアプリのビジネスロジック?
- 11. 食べ物に影響を与えない蛇とのコリソン
- 12. データベースIDに影響を与えずにメニュー項目を並べ替える
- 13. 影響を与える要因
- 14. npm依存関係がない - アプリケーションに与える影響
- 15. データベースに影響を与えずにテキストエリアに入力フォームを変更
- 16. setImageBitmapがカスタムImageButtonに影響を与えないのはなぜですか?
- 17. will_many:RoRに大きなパフォーマンス上の影響を与えますか?
- 18. LDMFDはR13に奇妙な影響を与えます
- 19. 必要な検証に影響を与えるコードネーターコールバック
- 20. なぜgroovycはセキュリティマネージャーに影響を与えますか?
- 21. glTexSubImage2Dは、フレームのフレームレートに深刻な影響を与えます。
- 22. FOR EACH ROWを指定したpostgresqlトリガーは影響を受けない行に影響を与えます。
- 23. TDEの有効化がデータベースのパフォーマンスに与える影響は何ですか?
- 24. お互いに影響を与えるAndroidの画像
- 25. fabricjsクローンオブジェクトは古い(デフォルト)オブジェクトに影響を与えます
- 26. AngularJSお互いに影響を与える2つの時計
- 27. NSMutableArrayが別のNSMutableArrayに影響を与えていますか?
- 28. JavaScript:コールバックで外界に影響を与えるには?
- 29. logging.config.dictConfig()が既存のロガーに影響を与えない点は何ですか?
- 30. データベースからのエンティティクラスの作成方法に影響を与える
あなたの修正を追跡し、その後に元に戻す。または、テストデータベースを作成します。データベースを変更すると、変更されました。「元に戻す」ボタンはありません。だからあなたは自分自身を構築しなければならない。行を挿入する場合は、後でそれを削除します。行を変更した場合は、行を選択して保存しておいてから、後で元に戻すことができます。同じものを削除する場合も同じです。代わりに(より良い)ライブデータベースを反映するテストデータベースを用意し、そのテストを行います。 – DaveRandom
これは、sf 1.xでは良い方法ではありませんでしたか?私はテスト用のデータベースが優れていると思いますが、私はセキュリティのために各テストの間に彼女を再初期化する必要がありますか? :/ – bux