在 Microsoft 测试管理器中执行时 Selenium 测试用例超时

Selenium test cases timing-out when executed in Microsoft Test Manager

我在从 Microsoft 测试管理器执行 Selenium 自动化测试用例时收到以下错误:

Initialization method RegressionTests.Online.LoginSuccess.init threw exception. OpenQA.Selenium.WebDriverException: OpenQA.Selenium.WebDriverException: The HTTP request to the remote WebDriver server for URL http://localhost:7058/hub/session/3b544efb-cefe-4e0e-84c2-906c46bb31ea/element timed out after 60 seconds. ---> System.Net.WebException: The request was aborted: The operation has timed out..

背景:

我在 C# 中创建了一个 Selenium WebDriver 测试,它在 Visual Studio 2013 年单独执行时成功执行。

然后我在 Microsoft 测试管理器中创建了一个测试用例,并将 Selenium 测试关联到 Visual Studio 中的测试用例。

根据 this site 上的指南,我已将 Selenium 测试用例转换为编码 UI 测试用例。

在我的本地电脑上我有:

在 Microsoft 测试管理器中执行测试用例时,确实会打开 firefox window。但是似乎没有执行任何操作,只是根据错误超时。

我是不是漏掉了什么?我不知道为什么测试管理器在 Visual Studio.

中独立运行时测试超时

看来超时是由于 WebDriver 无法找到站点造成的(非常明显)。

我在 Visual Studio 中使用自定义 App.Config 来告诉测试用例加载哪个站点。 App.Config 是使用 SlowCheetah 动态构建的,它根据 Visual Studio 中选择的配置转换 App.Config。这适用于手动构建,但是对于测试管理器所需的构建定义,正在使用默认配置(指向错误的站点)构建解决方案。因此超时。

很难弄清楚的原因是 fiddler 无法告诉我它试图加载哪个站点,测试管理器无法具体告诉我哪里出了问题(只是超时)。

希望这对某人有所帮助!