DBUnit 2章 参照メソッドのテスト
- 2.1. 参照メソッドのテスト
- 2.2. テストデータの作成
- 2.3. テストデータの登録
- 2.4. テストメソッドの実装
- 2.5. テストデータの後片付け
- 2.6. DatabaseOperation
2.6 DatabaseOperation
setUp、およびtearDownメソッドでは、DatabaseOperation.CLEAN_INSERTを利用してテーブルデータの操作を行いました。DatabaseOperationは他にも、以下のような操作を提供しています。
操作 | 説明 |
---|---|
DatabaseOperation.UPDATE | update処理を行います。この操作を実行すると、引数で指定されたデータセットのように、テーブルを更新します。この操作はSQLのupdate文を実行します。よって、テーブルにはすでにIDataSetで表されるデータが登録されている必要があります。データが存在しない場合は、エラーになります。 |
DatabaseOperation.INSERT | insert処理を行います。この操作を実行すると、引数で指定されたデータセットをテーブルに挿入します。この操作はSQLのinsert文を実行します。よって、テーブルに該当データがすでに存在する場合は、エラーになります。 |
DatabaseOperation.DELETE | delete処理を行います。データセットで表されるデータをテーブルより削除します。 |
DatabaseOperation.DELETE_ALL | データセットで示されているテーブルのすべてのデータを削除します。 |
DatabaseOperation.TRUNCATE | データセット内で示されているテーブルそのものを削除します。 |
DatabaseOperation.REFRESH | 文字通り、対象のデータベースを「リフレッシュ」します。既にデータが存在する場合はデータを更新し、存在しない場合は挿入します。テーブルに存在するがデータセットに含まれないデータは何も変化しません。 |
DatabaseOperation.CLEAN_INSERT | DELETE_ALL処理を実行した後、 INSERT処理を実行します。 |
場合によって、上記操作を使い分けましょう。
実習課題2
実習課題1のテストクラスで使用するDatabaseOperationをいろいろ変更し、動作の違いを確認しなさい。