Selenium RCの起動をWindowsのバッチファイルにして、Jenkinsから起動したら、

Firefoxを立ち上げたところで処理が止まってしまう。

> 05:55:02.690 INFO - Preparing Firefox profile
  
> 05:55:04.964 INFO - Launching Firefox
  
> 05:55:06.985 INFO - Checking Resource aliases

Jenkinsを介さずに、Windowsのコマンドプロンプトからならば、

処理が停滞しないので、さらにわけが分からない。

どうやら、Jenkinsからではインターネットにアクセスできないようだ。

処理が停滞するのは、URLのopenがタイムアイトしているから。

JenkinsはWindowsのサービスとして起動している。

そして、Windowsのサービスからインターネットにアクセスしようとして、

ファイアウォールに引っかかっているようだ(という推測)。

[コントロールパネル]>[管理ツール]>[サービス]

からJenkinsのプロパティを開いて、

[ログオン]タブの『デスクトップとの対話をサービスに許可』

を選択すると、サービスが起動している画面に移動でき、

停滞している画面を見ることができる。

画像なくなりました

メッセージの表示を選択すれば、Firefoxが停滞している様子が見える。

この課題を解決するには、ネットワーク設定をいじる必要がありそうだけれど、

よくわからなかった。

Slaveノードを作成して、Windowsサービスとして登録せずに起動する

自分がたどりついた方法は、Slaveノードを作成して、

そいつはWindowsサービスとしては登録しないまま、ネットにアクセスさせる方法。

まずは、

[Jenkinsの管理] > [ノードの管理]> [新規ノードの作成]からノード作成。

このとき、

詳しくは参考ページを参照。

Jenkinsスレーブの作成と設定 -ムーチョのメモ帳 https://wiki.jenkins-ci.org/display/JA/Step+by+step+guide+to+set+up+master+and+slave+machines

作成したノードをブラウザ上から立ちあげると、こんな窓が出てくる。

画像なくなりました

この状態で、Seleniumパッチを実行すると、問題なくネットへアクセスできた。

JenkinsをWindowsサービスとして立ちあげない

昨日のエントリの続き。

寝て起きたら、もっとカンタンな(当たり前な?)方法を思いついた。

JenkinsがWindowsのスタートアップでサービスとして起動することが問題なので、

サービスを無効にしてしまえばよい。

[コントロールパネル]>[管理ツール]>[サービス]

からJenkinsのプロパティを開いて、サービスを停止する。

停止したら、コマンドラインから、Jenkinsを手動で立ち上げなおす。

cd “C:\xxxxxx\Jenkins”

java -jar jankins.war

すると、しばらくしてJenkinsがWindowsのサービスとしてではなく

立ちあがるので、この状態ならばネットにつなげた。