Windows の Jenkins で cucumber を動かす

Windows の Jenkins で cucumber を動かそうとしていろいろ試行錯誤したのをまとめ。 あんまりやる人いないと思うけど、IE のブラウザテストを自動化したい人には需要あるんじゃないかなーと思いまとめました。
1
しんすく(け) さん。 @snsk

んでまあ今日も Jenkins 経由の cucumber with cmd.exe で、起動してるっぽいんだけどGUIが出ない問題に苦しんでますなう。お客様の中にー Windows x Jenkins で cucumber したことある方おられませんかー ><

2013-06-21 11:08:39
YAMAMOTO Masaki @nnasaki

@snsk service で Jenkins を動かしてたらこの問題かも http://t.co/SsPkol7cyC

2013-06-21 11:17:10
しんすく(け) さん。 @snsk

@nnasaki おおお!ありがとうございます。覚えておきます。<今回はWindowsXPで jenkins.war 起動でした。

2013-06-21 11:17:58
YAMAMOTO Masaki @nnasaki

@snsk そうですかー。では別な問題ですねー。

2013-06-21 11:20:43
しんすく(け) さん。 @snsk

@nnasaki 端的には bundle exec cucumber -r features としたときに、 No such file or directory - cmd /c chcp (Errno::ENOENT) と出る感じでして。。。

2013-06-21 11:21:55
しんすく(け) さん。 @snsk

@nnasaki ruby側でWindowsのパスが解決できていないのかな、、、と^-^; Errno::ENOENT はRubyのエラーっぽい。。

2013-06-21 11:22:20
YAMAMOTO Masaki @nnasaki

@snsk なるほどー。後はパスにスペースと2バイトが無いことと、環境変数の LANG を c や UTF-8 に変えてみるとかですかねー…

2013-06-21 11:42:16
しんすく(け) さん。 @snsk

@nnasaki おおおお!!!なるほど!!!ありがとうございます。試してみますm(_ _)m

2013-06-21 11:42:47
YAMAMOTO Masaki @nnasaki

@snsk 一応確認ですが、Jenkins さんから起動した時だけダメで、コマンドプロンプトからはcucumber 動くんですよね?

2013-06-21 11:44:01
しんすく(け) さん。 @snsk

@nnasaki YES、そのとおりです。cmd.exe から 同じコマンド打ったときはバッチリ動きます。Jenkinsさんのときだけコケる。なお、Jenkinsさんはlocalhostで動作してます。

2013-06-21 11:44:48
YAMAMOTO Masaki @nnasaki

@snsk mingwのRubyですよね?Devkitが読み込めてないとかもあるかもですね

2013-06-21 11:48:06
しんすく(け) さん。 @snsk

@nnasaki んー。Ruby Installer for Windows です。純粋cmd.exeで動く感じの。ffiとかはそのままDevKitでビルドしました。

2013-06-21 11:51:31
YAMAMOTO Masaki @nnasaki

@snsk はい。それがmingw版です。mswin32では無いよなーと。windows 7 なら cucumber 動くので私も挑戦してみようかな…

2013-06-21 12:04:04
しんすく(け) さん。 @snsk

@nnasaki おおお。なるほど!理解です。いま、chcp をJenkinsさんから叩いてみたら「んなコマンドねーよ」と怒られたので、基本的なユーザが違うのかも、、、といま疑いだしております。

2013-06-21 12:05:03
YAMAMOTO Masaki @nnasaki

@snsk Jenkins さん、いれて echo %path% したら、ユーザー環境変数が出なかったので、Path の問題かもです。

2013-06-21 12:25:19
しんすく(け) さん。 @snsk

@nnasaki ぽいですねー。。。いちおう、さっきのエラー出た時のグローバル設定では、いまのシステム環境変数全部突っ込んでいたのですが、なぜ普通のコマンドが使えないのかナゾ^^;

2013-06-21 12:27:15
しんすく(け) さん。 @snsk

@nnasaki サービスとして動かしたほうがユーザがはっきりするので、そちらでいまトライしております。

2013-06-21 12:31:25
しんすく(け) さん。 @snsk

@nnasaki サービスに切り替えてadminでログインしたらシナリオ走りました!!!!あとは先程教えていただいたGUIどうするの?を参照でいけるかも!!!

2013-06-21 12:35:50
YAMAMOTO Masaki @nnasaki

@snsk windows7 Jenkins (サービス)で、set Path=%path%;c:¥ruby¥binとcucumber で動いております。コンソール出力文字化けしてるけど…bundler使って無いからかな〜

2013-06-21 12:38:59
YAMAMOTO Masaki @nnasaki

@snsk おー。おめでとうございます!

2013-06-21 12:39:20
しんすく(け) さん。 @snsk

@nnasaki GUI触れていますか?? でもWindows7だったら最初に教えていただいた方向でいけそうですね♪ (当方XPで未だGUIは出ておりません、、がログ上ではしっかりテスト動いてます^-^;

2013-06-21 12:39:57
YAMAMOTO Masaki @nnasaki

@snsk Jenkins 実行時はコンソール画面出て来ていません。スクリーンショットとれるかなー

2013-06-21 12:43:38
しんすく(け) さん。 @snsk

@nnasaki あ、CucumberでFirefox実行する感じなんです^-^; ログ見る限りイケてるっぽいのですが、気持ち悪いのでGUI動いてほしいなあ、、、なんて。

2013-06-21 12:44:36
しんすく(け) さん。 @snsk

@nnasaki たぶんこのスレっぽいす。 http://t.co/z53riJUMuy ローカルシステムアカウントで動くように再調整。。。

2013-06-21 12:50:10