gpt4 book ai didi

c# - 您是否需要使用 RemoteWebDriver 运行 Selenium 服务器才能在 TFS 2017 vnext 构建中执行步骤 "Run Functional Tests"?

转载 作者:行者123 更新时间:2023-11-30 21:41:43 25 4
gpt4 key购买 nike

我已经能够使用简单的网络驱动程序设置在我的测试机器上本地运行 Selenium 测试,例如 IWebDriver driver = new FirefoxDriver(); driver.Url = "http://www.testedApp.com"; 并通过 Microsoft.VisualStudio.TestTools.UnitTesting; 运行测试,但是当我通过 Team Foundation 部署测试时服务器 vnext 构建步骤“测试:运行功能测试”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 服务器机器上运行,而不是我部署测试的机器)似乎在超时时失败,这导致我在堆栈溢出

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 机器上运行,还是在我尝试运行测试的远程机器上运行?

最佳答案

我只是想用我的解决方案更新它。

我设法让 vnext 构建步骤“测试:运行功能测试”在不使用 remoteWebDriver 或运行带节点的 Selenium 服务器的情况下工作。

我打开了所有正确的信任级别和端口,我的问题是我没有意识到我需要让运行测试的代理使用 PAT token 进行身份验证(换句话说,它需要 ssl 才能成功运行)(卫生署!)

我还遇到了域策略不断将自动登录的组策略重置为 0 的问题,我通过在开始测试之前运行一个重置脚本来解决这个问题。

希望这对其他人有帮助。

如果我的问题最初导致了一些错误的假设,我提前道歉。

但是,不用说,我很感激我不需要维护 selenium 服务器(或 Octopus 部署),并且 Vnext 构建的适应性足以在内部处理这一切。

Vnext 要完全适应我的需求还有很长的路要走,但这是一个很好的开始 (imo)

关于c# - 您是否需要使用 RemoteWebDriver 运行 Selenium 服务器才能在 TFS 2017 vnext 构建中执行步骤 "Run Functional Tests"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43026274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com