Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

DbUnit の検索結果:

【ONJava.com翻訳】DbUnitを使った効果的なユニットテスト

…公開しています! 記事自体は2年前くらいに翻訳したもので古いんですけど、DbUnitの基本的な使い方が解説されています。 DbUnitというのはJUnitを拡張したもので、データベースアクセスの単体テストを行うためのツールです。 テストの実行前とxmlやExcelを用いてデータベースのテーブルに必要なデータをセットしたり、実行後にデータを消すといったことができるため、データベースにアクセスするクラスでも単体テストを自動化、反復化することができます。 よかったら読んでください!

eclipseのRefleshを自動にする

DbUnitを使っていてExcelを書き換えたりすると、パッケージエクスプローラで右クリック→RefleshかF5とかしていたけど、Windows→Preferences→General→Workspaceで「Refresh automatically」にチェックを入れればRefleshが自動になる。

テスティングツール作成

DbUnitを利用してDAOの単体テストのためのベースクラスを作成。 DbUnitのDatabaseTestCaseを継承 getDataSet()メソッドではテストケースの実装クラスと同じディレクトリにあるテストメソッド名と同名のエクセルファイルを読み込む。TestCase#getName()でテストメソッド名が取得できる。 getSetUpOperation()メソッドはデフォルトではDatabaseOperation.CLEAN_INSERTとした。Insertのテスト…

DbUnitのテーブルの主キーを取得する

Column[] columns = table.getTableMetaData()..getPrimaryKeys();

DbUnitのデータセット・テーブルをソートする

IDataSet sortedDataSet = new SortedDataSet(targetDataSet); ITable sortedTable = new SortedTable(targetTable, columnsToSort);

DbUnitであるカラムだけ残した・除いたテーブルを取得する

DefaultColumnFilter.includedColumnsTable(table, new String[] {"columnNames"}); DefaultColumnFilter.excludedColumnsTable(table, new String[] {"columnNames"});

DbUnitのITableからオブジェクトを生成する

private List createBeanList(Class clazz, ITable table) { Column[] columns; try { ITableMetaData metaData = table.getTableMetaData(); columns = metaData.getColumns(); } catch (DataSetException e) { throw new RuntimeException(e); } setTargetF…

DbUnitのDatabaseOperation

定数名 処理 DatabaseOperation.UPDATE データセットにあるデータを更新する。 DatabaseOperation.INSERT データセットにあるデータを登録する。テーブルに主キーが存在する場合は例外が発生する DatabaseOperation.DELETE データセットにあるデータをテーブルから削除する DatabaseOperation.DELETE_ALL 対象テーブルのデータをすべて削除する DatabaseOperation.TRUNCAT…

DbUnitのデータベースプロダクトの指定

DatabaseConfig config = databaseConnection.getConfig(); config.setProperty(DatabaseConfig.PROPERTY_DATATYPE_FACTORY, new Db2DataTypeFactory());

DbUnitのスキーマ指定

Connection conn = EaglesTestConnection.getConnection(); IDatabaseConnection databaseConnection = new DatabaseConnection(conn, schema);