【发布时间】:2017-08-18 23:20:05
【问题描述】:
我已经能够使用简单的 webdriver 设置(例如 IWebDriver driver = new FirefoxDriver(); driver.Url = "http://www.testedApp.com";)在我的测试机器上本地运行 Selenium 测试并通过 Microsoft.VisualStudio.TestTools.UnitTesting; 运行测试,但是当我通过 Team Foundation Server vnext Build 步骤部署测试时“测试:运行功能测试”https://www.visualstudio.com/en-gb/docs/build/steps/test/run-functional-tests 我收到各种错误,这些错误似乎都与无法创建驱动程序有关。
我正在将 selenium 测试部署到已安装要测试的应用程序的远程计算机(Windows Server 2008 R2 或 2012)上。如果我将 url 放到 driver.Url = "http://www.testedApp.com"; 或 driver.Url = "http://www.localhost/testedApp.com"; 机器上似乎并不重要(它看起来仍在 TFS 服务器机器上运行,而不是我已经部署测试的机器上)似乎失败了超时导致我在 Stack Overflow 上得到了这个答案
Selenium Error - The HTTP request to the remote WebDriver timed out after 60 seconds
在那里尝试了所有选项后,进一步观察,我发现了 Selenium Server 和 RemoteWebdriver(RemoteWebdriver 实际上在我的错误中很深)
我还在管理员帐户下在远程计算机上运行测试代理,因此假设 UI 访问不会有问题,但如果我使用 Phantomjs 作为浏览器,错误也会持续存在。
所以,我想我真正的问题是,为了从 TFS 机器在远程机器上成功运行测试,我是否需要安装和运行 Selemium 服务器(因此通过 RemoteWebdriver 创建我的驱动程序)?
如果是这样,这个 Selenium 服务器会在 TFS 机器上运行,还是在我尝试在其上运行测试的远程机器上运行?
【问题讨论】:
标签: c# unit-testing tfs selenium-server vnext