Java

Windows7でSeleniumServer(RC)を使ってFireFoxを起動する方法

投稿日:2013/09/07 更新日:

ちょうどWEBアプリを作っているので複雑な画面をSeleniumでテストケース作っておけばいいかなーと思って作りました。
FireFoxDriverを起動しています。
Jenkinsでテストとテストサーバーへのデプロイもしているので、SeleniumもJenkinsから実行できれば、なお良いねということでやってみた。
かなり端折りますが、結論からいうとLinux上のFireFoxで動かすことはできませんでした。
正確には、動いたのですがFireFoxが途中で止まってしまって、お手上げです・・・。

で、SeleniumRCっていうのが昔あったなーと思って、探してみたら最近はSeleniumServerっていうらしいですね。
という訳で、Windows7上でSeleniumServerを動かして、Jenkinsからこいつにアクセスすれば万事OKですな。
ということで、Windows7でSeleniumServerを動かして、Jenkinsから実行する方法です。

環境

最初に、簡単な環境を書いてみます。
プレゼンテーション1
図に文字がないのは、png出力したら文字化けしたからなんです。まぁ、なくてもわかりますよね・・・。

Windows7の準備

準備といってもFireFoxがインストールされていれば、SeleniumServerのみです。ちなみに、JDKは別途インストールしておいてくださいね。
SeleniumServerは、Seleniumのダウンロードページからダウンロードします。
ダウンロードページを開く
seleniumserver
この時点での最新版は2.35.0をダウンロードします。

起動するか確認。
コマンドプロンプトか何かで以下のコマンドを実行します。

java -jar selenium-server-standalone-2.35.0.jar -interactive

立ち上がればOK。

Windows7の準備はこれで、完了。

一応動作確認

とりあえず、テストで以下のようなプログラムを書いてみます。

	@Test
	public void test起動() throws Exception {
		RemoteWebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), DesiredCapabilities.firefox());
		driver.get("http://www.google.com");
		sleep(3000);
		driver.quit();
	}
	
	private static void sleep(int microtime) {
		try {
			Thread.sleep(microtime);
		} catch (InterruptedException e) {
		}
	}

実行するとFireFoxが立ち上がって、Googleのページが表示されると思います。
FireFoxDriverじゃなくて、RemoteWebDriverとなっているところに注意です。

実は、これで準備完了です。
後、外部から4444ポートに接続しますので、適当にWindowsのファイアウォールのルールを変更しておいてください。

まとめ

いい時代になったものですね。
ちなみに別途ChromeとかInternet Explorerでも動くんじゃないかなーと思っています。
時間があれば、試してみます。

-Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

Tomcatのメモリ使用量をjconsoleを使って監視する方法

まれに、Tomcatのメモリ使用量をリアルタイムで知りたいということが無いでしょうか。 管理人はたまにあります・・・。 JDK5か6以降jconsoleという便利なツールが追加されまして、それを使って …

no image

Commons-VFS2で再帰的にディレクトリ一覧を取得する方法

いつの間にかCommons-VFSが2にバージョンアップしています。 昔使ったんですけど、FTPの動作が微妙すぎてやめました・・・。 Javaでディレクトリを再起的に検索する方法はありふれているのです …

no image

JavaからTwitter4jを使ってタイムラインを表示してみる

今、Playframework2でTwitterアプリを作っています。 ですが、最初にTwitterの準備をしなければならないことがわかりました。 JavaでTwitterを操作するのであれば・・・。 …

初めてのStack Overflow(英語サイト)

最近、困ったことがあって調べものをするとだいたいStack Overflowの記事がヒットします。 基本的にReadOnlyだったのですがApache Camelのことで少し気になったことがあったので …

Spring MVCでHelloWorld Maven2からEclipse編

先日よりはじめて触ったSpingMVC。 取り急ぎ、環境構築をしてみます。 初めてなので、WEBのチュートリアルみたいなのを見ながら始めました。 今回の目標はMaven2でひな形を作って、それをEcl …