【发布时间】:2017-09-06 21:15:26
【问题描述】:
我们的 QA 分析师使用这些 Nuget 包编写了 UI 测试
- NUnit 3.8.1
- NUnit 控制台运行程序 3.7.0
- Nunit 3 测试适配器 3.8.0
- Nunit 橙 2.1.0
- 硒支持 3.5.2
- Selenium Web 驱动程序 3.5.2
- Selenium Web 驱动程序 IEDriver 3.5.1
- Selenium Web 驱动程序等待扩展 1.0.0
当我们在visual studio中打开解决方案并选择要运行的测试类别时,每个测试都会打开一个firefox浏览器,登录,导航到页面,检测元素并基本通过。
但是,当我们使用 Visual Studio 的脚本构建时,在 Visual Studio Test V2 过程中,所有测试都失败并出现以下错误:
测试 A 失败
2017-09-06T19:09:01.3495462Z 错误消息:
2017-09-06T19:09:01.3495462Z OpenQA.Selenium.ElementNotVisibleException:
2017-09-06T19:09:01.3495462Z 堆栈跟踪:
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(响应错误响应)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.Execute(字符串 driverCommandToExecute,Dictionary2 parameters)
2017-09-06T19:09:01.3495462Z at OpenQA.Selenium.Remote.RemoteWebElement.Click()
2017-09-06T19:09:01.3495462Z at x.Init.click(By locator) in E:\agent\_work\1\s\UI Tests\AutomatedTests(FF)\x\Init\Init.cs:line 362
2017-09-06T19:09:01.3495462Z at x.AbstractPage.expandMenuItem(By menuItemlocator) in E:\agent\_work\1\s\UI Tests\AutomatedTests(FF)\xSelenium\Pages\AbstractPage.cs:line 223
2017-09-06T19:09:01.3495462Z at xSelenium.AbstractPage.openAirlinesPage() in E:\agent\_work\1\s\UI Tests\AutomatedTests(FF)\xSelenium\Pages\AbstractPage.cs:line 775
2017-09-06T19:09:01.3495462Z at xSelenium.Acceptance.Acceptance_SeniorManager_OpenAndCheckLinksOnAirlinesPage() in E:\agent\_work\1\s\UI Tests\AutomatedTests(FF)\xSelenium\Tests\Acceptance.cs:line 750Standard Output Messages:
2017-09-06T19:09:01.3495462Z OpenQA.Selenium.WebDriverTimeoutException: Timed out after 25 seconds
2017-09-06T19:09:01.3495462Z at OpenQA.Selenium.Support.UI.DefaultWait1.ThrowTimeoutException(字符串异常消息,异常 lastException)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Support.UI.DefaultWait1.Until[TResult](Func2 条件下)
2017-09-06T19:09:01.3495462Z 在 E:\agent_work\1\s\UI Tests\AutomatedTests(FF)\xSelenium\Init\Init.cs:line 596 中的 xSelenium.Init.waitUntilElementIsNotVisible(By by)
2017-09-06T19:09:01.3495462Z 无法定位元素://span[text()='OK']
2017-09-06T19:09:01.3495462Z 错误堆栈跟踪开始
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(响应错误响应)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.Execute(字符串 driverCommandToExecute,Dictionary`2 参数)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(字符串机制,字符串值)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.FindElementByXPath(String xpath)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.By.c__DisplayClasse.b__c(ISearchContext 上下文)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.By.FindElement(ISearchContext 上下文)
2017-09-06T19:09:01.3495462Z 在 OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(作者)
2017-09-06T19:09:01.3495462Z 在 E:\agent_work\1\s\UI Tests\AutomatedTests(FF)\xSelenium\Init\Init.cs:line 412 中的 xSelenium.Init.isElementPresent(By by)
2017-09-06T19:09:01.3495462Z 错误堆栈跟踪结束
构建机器正在运行 Windows 10(另一台构建机器运行 Server 2012,并引发相同的错误)
- 火狐55
- Chrome 版本 60.0.3112.113
这些 Visual Studio 测试选项已启用: - 测试组合包含 UI 测试
服务器上的代理处于交互模式并注册为 Windows 服务 - 它启用了“允许服务与桌面交互”。
已将 SetPageLoadTimeout 和 SetScriptTimeout 超时增加到 120 秒,但问题仍然存在。
【问题讨论】:
-
在 OneDrive 上共享详细日志。另一方面,尝试直接设置具有交互模式的构建代理(而不是具有允许服务与桌面交互选项的服务)。 visualstudio.com/en-us/docs/build/actions/agents/…
标签: selenium azure-devops azure-pipelines