0

Jenkins の仕事に機能テストを組み込みたいと考えています。nUnit を使用して手動でテストを実行すると、Jenkins から実行するとすべて正常に動作します。

"C:\Program Files (x86)\NUnit 2.6\bin\nunit-console.exe" /framework:net-4.0 /xml:functional-tests.xml c:\IISRoot\ALAS-QA\ALAS.Web.Test.dll /apartment=STA /process=Separate

すべてのテストでこの例外が発生します

Test Error : ALAS.Web.Test.TestAddLead.TestAddSingleLead
WatiN.Core.Exceptions.BrowserNotFoundException : Could not find an IE window matching constraint: Timeout while waiting to attach to newly created instance of IE.. Search expired after '30' seconds.
at WatiN.Core.IE.CreateIEPartiallyInitializedInNewProcess()
at WatiN.Core.IE.CreateNewIEAndGoToUri(Uri uri, IDialogHandler logonDialogHandler,  oolean createInNewProcess)
at FluentAutomation.WatiN.AutomationProvider.getCurrentBrowser()
at FluentAutomation.WatiN.AutomationProvider.Navigate(Uri pageUri)
at ALAS.Web.Test.TestExtensionMethods.Login(CommandManager I, String username, String password) in c:\java\jenkins\workspace\SCI-ALAS\ALAS.Web.Test\TestExtensionMethods.cs:line 40
at ALAS.Web.Test.TestAddLead.TestAddSingleLead() in c:\java\jenkins\workspace\SCI-ALAS\ALAS.Web.Test\TestAddLead.cs:line 33

このエラーが発生する行は、IE ウィンドウにアタッチしようとします。

私はIE9を搭載したWindows 2008サーバーを使用しています

2012 年 8 月 3 日金曜日に追加

私はこれが原因である可能性があることを読みました

  • 「localhost」へのリクエストは、デフォルトで 127.0.0.1 の IPv4 アドレスではなく ::1 の IPv6 アドレスに解決され、WatiN テストは失敗します。

ローカル マシン上ではないパブリック URL に対してテストしているため、これは当てはまりません。

  • IE セキュリティ強化の構成がオンになっている

結果なしでこれをオフにしました。

  • ファイルが見つからない Microsoft.mshtml.dll、Interop.shdocvw.dll、または Watin.Core.dll

    テストが実行される出力ディレクトリにそれらがあります。

4

1 に答える 1

0

私はこのSOポストワティンからWindows2008サーバー上のTFSを介して情報を試しています これは基本的にそれを言います

自動UIテストは、Windowsサービスとして実行されているビルドエージェントでは実行できません。これは、対話型ではないため、デスクトップと対話できないためです。

そのため、nunit呼び出しを含むbachファイルを作成し、Jenkinsで次のように実行することで、独自の「インタラクティブエージェント」を作成することを計画しています。

cmd /interactive /c C:\workfolder\nunit-test.bat
于 2012-08-03T14:58:55.610 に答える