.NET テスト用の NAnt/NUnit と .NET Web アプリケーションの継続的な統合に Jenkins を使用します。Jenkins は、自動化されたテストと共に多くのビルドを実行する 9 つのスレーブ (すべて Windows Server 2003) で構成されています。
JavaScript 単体テストを実行するために js-test-driver をセットアップしようとしていますが、以下の NAnt タスクは開発者ワークステーションでローカルに正常に動作しています。Internet Explorer は、すべての Web アプリケーションの唯一のターゲット ブラウザーであるため、テストしたい唯一のブラウザーです。
<target name="jsTests" >
<echo message="Running JavaScript tests..." />
<exec program="java.exe">
<arg line="-jar '${jstestdriver.dir}\JsTestDriver.jar'" />
<arg line="--config '${ui.webtests.dir}\JsTestDriver.conf'" />
<arg line="--port 9876"/>
<arg line="--browser 'C:\program files\internet explorer\iexplore.exe'"/>
<arg line="--verbose"/>
<arg line="--reset"/>
<arg line="--tests all"/>
<arg line="--testOutput '${results.jstestdriver.dir}'"/>
</exec>
</target>
おそらく次の理由により、Jenkins で同じタスクに問題が発生しています。
- これはサーバーであり、サービス アカウントとして実行しています
- サーバーへのブラウザのインストールにはセキュリティ上の制限があります
js-test-driver wikiのGettingStarted
ページには、js-test-driver サーバーが実行されているマシンとは別のマシンでブラウザーを実行できると書かれています。
テストを実行する前に、テスト サーバーを起動し、少なくとも 1 つのスレーブ ブラウザーをキャプチャする必要があります。テスト ランナーが存在するマシンにサーバーを配置する必要はなく、ブラウザー自体も別のマシンに配置することができます。
- Jenkins/Windowsセットアップでこれを行った人はいますか?
- js-test-driver を実行するためのスケーラブルなセットアップの代替手段はありますか?