6

私はselenium Web driver java builtを使用しています。エディターはEclipseです。私たちのウェブサイトの 1 つをテストするために、MySQL データベースからデータを取得することにより、データ駆動型テストを使用しています。

開発サーバー データベースをローカル マシンにダンプし、そのダンプ データをマシンの xampp にインストールして、データベースに接続し、テスト プロセスを続行できるようにしました。

ローカル マシン データベースに接続するには、この接続文字列を使用しています

String url1 ="jdbc:mysql://localhost:3306/databasename";           
String dbClass = "com.mysql.jdbc.Driver";
Class.forName(dbClass).newInstance();
Connection con = DriverManager.getConnection(url1, "root", "");
Statement stmt = (Statement) con.createStatement();

ここで、リモート サーバーにある元の開発サーバー データベースに接続する必要があります。

リモートマシンに接続するための接続文字列としてこれを試しました

 String url1 ="jdbc:mysql://10.0.2.129:3306/test";
 String dbClass ="com.mysql.jdbc.Driver";
 Class.forName(dbClass).newInstance();
 Connection con = DriverManager.getConnection(url1, "root","root");

しかし、リモート マシン データベースに接続できません。次のエラーが表示されます

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
        at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)

ht アクセスが保護されているリモート サーバー データベースに接続するには、接続文字列でどのような変更を行う必要があるか教えてもらえますか? また、リモート サーバー データベースに接続しながら、ローカル マシンからテスト ケースを実行する方法についても説明します。

何か提案をお願いします。

4

3 に答える 3

0

接続文字列でマシンの IP アドレス、ポート、データベース名を指定するだけです。だから、次のようなものを試してください

String dbUrl = "jdbc:mysql://192.168.1.53306/myDB";
DriverManager.getConnection(dbUrl, "username", "password");

そして、テストは以前と同じように機能するはずです。別のマシンに接続しているだけで、時間がかかる可能性があります(たとえば、クエリに時間がかかる場合があります)が、それが唯一の違いです。

于 2013-09-15T10:37:50.043 に答える
-1

データベースに接続するにはjarファイルを追加する必要があります

jar: mysql-connector-java
于 2014-09-30T07:22:24.510 に答える