2017-03-26 1 views
2

私は、IWebDriver driver = new FirefoxDriver(); driver.Url = "http://www.testedApp.com";のようなシンプルなwebdriverセットアップを使用し、Microsoft.VisualStudio.TestTools.UnitTesting;でテストを実行して、テストマシンでローカルにSeleniumテストを実行することができましたが、Team Foundation Server vnextを通じてテストをデプロイするときに "Test:Run Functional Tests" https://www.visualstudio.com/en-gb/docs/build/steps/test/run-functional-tests私はすべて、最初にドライバを作成できないということに関連しているように思われる様々なエラーが発生します。TFS 2017 vnext buildで "Run Functional Tests"ステップを実行するために、RemoteWebDriverでSelenium Serverを実行する必要がありますか?

テストするアプリケーションが既にインストールされているリモートマシン(Windows Server 2008 R2またはWindows 2012のいずれか)に、セレンテストを展開しています。 driver.Url = "http://www.testedApp.com";またはdriver.Url = "http://www.localhost/testedApp.com";(私はテストを展開したマシンではなくTFSサーバーマシンから実行されているように見える)マシンにURLを設定しても、タイムアウトに失敗しているように見えますスタックオーバーフロー上のこの回答へ

Selenium Error - The HTTP request to the remote WebDriver timed out after 60 seconds

は、そこにすべてのオプションを試し、さらに見た後、私は、Seleniumサーバーを発見し、RemoteWebdriverは

私は(RemoteWebdriverは実際には非常に深いダウン、私の誤りです)管理者アカウントでリモートマシン上でテストエージェントを実行しているため、UIアクセスがproblではないと仮定します私はブラウザとしてPhantomjsを使用している場合、エラーも持続します。

TFSマシンからリモートマシンでテストを正常に実行するには、Selemium Serverをインストールして実行する必要があります(RemoteWebdriverを使用してドライバを作成する必要があります)。

もしそうなら、このSelenium ServerはTFSマシンまたはテストを実行しようとしているリモートマシンに行きますか?

答えて

1

ブラウザーを実行しているすべてのマシンに、セレン・サーバーまたはノードが必要です。

+0

おかげです。さらなるアドバイスのためにバグができたら、別のマシン設定を簡単に維持するために、それぞれ別々のvnextビルドを使用していくつかのマシンでこれを実行する予定でしたが、Gridドキュメントを見ると、そこから複数のマシンを実行しますか?異なるポート上で複数の「グリッド」を稼働させることが可能か(またはリソースの浪費)、それぞれから1台のマシンしか使用できないのでしょうか?あるいは、1つのビルドからすべての異なるマシンとテストを実行するより良い方法を試してみるべきですか? – toltec7

+0

各マシンで異なる機能を作成できる場合は、1つのグリッドで十分であり、希望する機能を要求できます。あなたはあなたの区別のためのカスタム機能が必要な場合があります。このブログの投稿は以下のように役立ちます:https://rationaleemotions.wordpress.com/2014/01/19/working-with-a-custom-capability-matcher-in-the-grid/ –

1

これを私のソリューションで更新したかっただけです。

私はvnextを取得できました。remoteWebDriverを使用せずに、またはノードを持つSelenium Serverを実行せずに、ビルドステップ「テスト:機能テストを実行する」を実行しました。

私は正しい信頼レベルとポートをすべて開いていましたが、PATトークンで認証されているエージェントを実行する必要があることを認識していませんでした(つまり、sslが動作する必要があります

また、ドメインポリシーによって、自動ログオンのグループポリシーが0にリセットされていた問題が発生しました。このテストでは、テストを開始する前にスクリプトを実行してリセットしています。

これは他の人に役立つことを願っています。

私の質問が最初にいくつかの誤った仮定につながった場合は、事前にお詫び申し上げます。

もちろん、セレンサーバ(またはOctopusデプロイメント)を維持する必要はなく、Vnextビルドはこれを全面的に処理するのに十分対応できることに感謝します。

Vnextはまだ私のニーズに完全に適応になることを移動するための方法を持っていますが、それは素晴らしいスタート(IMO)確認のスティーブため

関連する問題