Java プログラムのハブとして selenium-standalone-server を起動しようとしています。ProcessBuilder と Process を使用しようとしました。私はそうすることができませんでした。次に、Apache Commons exec ライブラリを見つけました。セレンサーバーを起動できました。しかし、次のコードを使用している場合、サーバーをハブとして実行できません。このコードを日食で実行しようとしています。
package selenium.tool.utils;
import org.apache.commons.exec.CommandLine;
import org.apache.commons.exec.DefaultExecutor;
public class HubRunner {
public HubRunner(String portNumber) {
try {
String cmd = "java";
CommandLine cmdline = CommandLine.parse(cmd);
cmdline.addArgument("-jar");
cmdline.addArgument("selenium-server-standalone-2.33.0.jar");
cmdline.addArgument("-role hub", false);
cmdline.addArgument("-port 5454", false);
System.out.println(cmdline.toString());
DefaultExecutor exe = new DefaultExecutor();
exe.execute(cmdline);
} catch (Exception ex) {
System.err.println(ex.getMessage());
}
}
public static void main(String[] args) {
HubRunner hr = new HubRunner("8888");
}
}
理想的には、このプログラムはサーバーをハブとして起動する必要があります。しかし、それはしていません。「-role hub」および「-port 5454」パラメータが省略されています。
次の出力が得られます。
java -jar selenium-server-standalone-2.33.0.jar -role hub -port 5454
2013 年 7 月 28 日 10:42:32 PM org.openqa.grid.selenium.GridLauncher メイン
情報: スタンドアロン サーバーの起動22:42
: 33.468 情報 - Java: Sun Microsystems Inc. 14.0-b16
22:42:33.470 情報 - OS: Linux 2.6.33.3-85.fc13.i686.PAE i386
22:42:33.520 情報 - v2.33.0、コア v2.33.0 . リビジョン 4e90c97
22:42:34.111 情報から構築 - RemoteWebDriver インスタンスは次の場所に接続する必要があります:http://127.0.0.1:4444/wd/hub
22:42:34.115 情報 - バージョン Jetty/5.1.x
22:42:34.117 情報 - 開始された HttpContext[/selenium-server/driver,/selenium-サーバー/ドライバー]
22:42:34.119 INFO - HttpContext を開始しました[/selenium-server,/selenium-server]
22:42:34.120 INFO - HttpContext を開始しました[/,/]
22:42:34.182 情報 - org.openqa.jetty.jetty.servlet.ServletHandler@13c468a を開始しまし
た 22:42:34.183 情報 - HttpContext[/wd、/wd]
を開始しました 22:42:34.200 情報 - 0.0.0.0 で SocketListener を開始しました:4444
22:42:34.200 情報 - org.openqa.jetty.jetty.Server@15e83f9 を開始しました
私を助けてください。