2012-01-20 4 views
1

現在、私のテストオートメーションはリモートDBを使ってテストデータを管理しています。実際には、CRUD操作を行うためにサーバーにホストされているラッパーWebserviceアプリケーションがあります。もう1つのラッパーアプリケーションをオーバーヘッドとして維持し、ローカルDBに移動したいと思う。テスト自動化 - リモートDBまたはローカルDB何がベストプラクティスですか

私はSQLLiteを使いたいと思います。これは、テストの自動化にローカルになります。これはバージョンコントロールにチェックインすることができます。すべてのテストスイートを実行する前に、SQLiteをチェックアウトすることができます。テストではCRUDを行い、最後にSVNやPerforecのようなバージョンコントロールをチェックします。

私は、テスト自動化のためのデータベースのようなsqliteを持つことの長所と短所を得たいと思っています。

答えて

0

テストでは、それぞれのテストに必要なデータを入力する必要があります。すべてのテストが実行される1組のデータを持つことは、テストを一緒に結合しているため、問題を尋ねています。あなたのVCにバイナリSQLiteファイルを持っているのではなく(それはそれ自身の問題の原因になります)、各テストに必要なデータをテストの "setup"メソッドに挿入します。各テストに必要なデータが同じ場合は、各テストのセットアップ方法で呼び出される共通のメソッドに移動します。

+0

私の質問は、データを読み書きするテストスイートのどこよりもデータベースインスタンスを保持するところです。私はWebサービスを通じてリモートからアクセス可能なインスタンスをローカルデータベースで置き換えるべきですか?チェックインはテストコード内よりビルドシステムの一部である可能性があります。今回はクリアしたいと思っています。 –

+0

ローカルDBを使用すると、方程式からネットワークを削除することでテストが速くなります。つまり、テスト用のデータベースを作成するだけです。 DBをVCシステムにチェックする必要はありません。なぜなら、実際のテストのためにDBを最初から構築する必要があるからです。 – cdeszaq

関連する問題