問題タブ [spring-test-dbunit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
postgresql - DBUnit ブール値
SpringBoot を学んだ後、さらに進んで (DBUnit と SpringTestDBUnit) を使用して統合テストを処理したいと思いました。プロセス全体を通して、データセットのブール型データ型の列に値を設定するまで、すべてが順調に進んでいました。(データセットの内容を以下に示します)
クライアント レコード [コード = 0003] に属性を追加active="false"
すると、統合テストが失敗しException processing table name='Client'
、クライアント レコード [コード = 0001] がアクティブな非 null 列制約に違反した結果としてこのメッセージが表示されます。
すべてのレコードのアクティブな列に値を指定して (ブランチDBUnit_For_Boolean_Columns_Attempt_Oneで)エラーを修正した後(これは仕様から少し外れています)、機能しました。しかし、私のターゲットは、上記のデータセットを使用して統合テストを正常に実行できました。
問題は、上記のデータセットを使用してどのように統合テストを成功させることができるかということです。今のところ、ソリューションの実装に苦労しているため、Bitbucket リポジトリを作成しました。これを参照して手元で支援してください。
変更ログ
2015/02/04 変更
- 質問内容の改善
- Bitbucket リポジトリを追加しました
java - @DatabaseSetup がデータ セットを読み込めません
Java config を使用してテスト環境を構成しました。私のテストでは、実行する前にいくつかのデータが必要ですが、@DatabaseSetup
注釈を付けてテストを実行すると、常にエラーが発生します
ファイルは にありますsrc/test/resources/personTestData.xml
。好奇心から、テスト自体が配置されている同じパッケージにファイルを移動しましたが、それでも同じエラーが発生します。
私はウェブでエラーを検索するのに数え切れないほどの時間を費やしましたが、今まで解決策はありません.
アップデート
使用するコンポーネントとバージョン:
私のxml
私のテストケース
データベースの初期化用に切り取られたスタック トレース
spring - hibernate statelessSession での DBUnit の問題
Spring と DBunit ( http://springtestdbunit.github.io/ )を使用してコードをテストしようとしています。
ユニットテストに入ったら:
DBUnit によって挿入されたエンティティのリストを返すため、データベース (MYSQL) にレコードを挿入しました。
しかし:
false を返します! ステートレス セッションを使用してレコードを見つけることができません。
前もって、Liquibase を使用して同じレコードを挿入していましたが、このコードは完全に機能しました。
HSql を使用するとさらに悪いことに、ステートレス セッションを開こうとすると完全にフリーズします... (scroll() 命令で...)
ご協力ありがとうございました!
dbunit - org.dbunit.dataset.NoSuchTableException: ビューへのデータセットの読み込み中
dbUnit をプロジェクトに統合することを楽しみにしています。プロジェクトにはSpringがあり、ORMはありません。XML dataSet を db にロードしているときに、org.dbunit.dataset.NoSuchTableException: XXX_VW "XXX_VW" is a db view が発生します。ただし、データセットを任意のテーブルにロードできます。必要なビューが終了し、メタデータが類似していることを db で確認しました。
以下は、テストのセットアップメソッド中に実行するコードです。
何が問題なのですか?
java - データベース単位で DB を初期化する方法 (ステートメントにテーブルが見つかりません)?
私は単純な春のプロジェクトを持っており、いくつかのサービス テストを行うためにspring-dbunitを使用しようとしています。DBアクセスにはjdbcTemplateを使用しています。Bean の構成:
テストクラスは次のようになります。
Cars.xml は単純なデータ セットです。
構成でエラーが発生する必要がありますが、carService.sizeInGarage() を呼び出すと、次のメッセージが表示されます。
org.springframework.jdbc.BadSqlGrammarException: StatementCallback; 不適切な SQL 文法 [SELECT count( ) FROM car]; ネストされた例外は java.sql.SQLException: Table not found in statement [SELECT count( ) FROM car]
テストを実行する前にDBを初期化する必要がありますか、それとも@DatabaseSetupに問題があり、xmlファイルが見つかりませんか? hsqldb が起動して正しく動作していることを確認するにはどうすればよいですか?