私はTomcatに1つのwebappをデプロイしています。これは、JDBCドライバのリモートdbへのアクセスを使用します。私の質問は:どのように私はプロキシのように真ん中に入ることができ、(Javaコードの1行を変更せずに)結果を模倣することができますか?TomcatとJDBCドライバ
例:私が使用できるjdbcプロキシがありますか?
ありがとうございました。
私はTomcatに1つのwebappをデプロイしています。これは、JDBCドライバのリモートdbへのアクセスを使用します。私の質問は:どのように私はプロキシのように真ん中に入ることができ、(Javaコードの1行を変更せずに)結果を模倣することができますか?TomcatとJDBCドライバ
例:私が使用できるjdbcプロキシがありますか?
ありがとうございました。
1行のコードを変更/追加しないでください。私が知っていることではありません。もちろん、インタフェースをプログラミングしてコード用のJUnitテストを書く予定の場合は、Mockitoのような模倣ライブラリを調べて、その仕事をしてください。しかし、データを "作成する"という仕事はあなたの目に留まりますために。
質問は何ですか:あなたは何を試そうとしていますか? SQLステートメントが正しいことを確認しますか?またはトランザクションの境界?あるいは、あなたのDAO層の中にあるデータ処理がありますか?そんなことを考えれば、嘲笑する必要があることについて異なる結論に導くことができます。
あなたは、いくつかのオプションがあります。
は、H2として組み込みデータベースを使用してください。他のデータベースにはcompatibility modesがほとんどないので、あなたのステートメントを変更する必要はありません。
SanjayのようにMockitoのような模擬ライブラリを使用してください。
データベースのユニットテストにdbUnitを使用してください。
可能であれば、ローカルコンピュータにリモートデータベースをインストールします。
編集:あなたのコメントから、オプション1と2はあなたに関心があるようです。
私はそれがまだ必要ではなかったので(私は実際ののものを使用することを好むので)私は嘲笑を使用していませんでしたが、それは有用ではないと言いません。
だから、私は1にビットを集中します:
は、具体的には、connecting to database using JDBCについての一部をH2のチュートリアルをチェックしてください。また、quickstartガイドを読むことは傷つけません。
互換性を確認するには、私が以前に提供したリンクを確認し、使用しているデータベースに適したモードを使用してください(どちらを指定していないか)。
ポイントに応答: 1)私の目標は、H2などローカルにデータベースを使用することです...どのように? 2)dbの代わりに、Mockは良い解決策ですが、どうですか? 3)データベースをテストしたくない 4)ローカルインストールは提供されていません。私の投稿の目的は、 – power
目的は、(開発中の)アプリケーションの使用をスピードアップすることです。リモートデータベースの開発が遅くなります。 – power
ああ、大丈夫です。私はこれを絶対に愛しています:http://hsqldb.org/ - 残りの部分と同じVMで実行するのは簡単ですが、完全に機能します。おそらくそれは解決策ですか? –