我是 Selenium 和 TFS 构建的新手。我用 Selenium WebDriver 编写了一些 UI 测试用例,它在我的本地环境中运行良好。现在,我想在 TFS 构建中运行这些 UI 测试用例。我对现有的构建任务执行了以下操作。
- 添加了 Visual Studio 测试平台安装程序
- 添加了 Visual Studio 测试任务
vsTest 在下面的行中失败并出现错误:System.Net.WebException:底层连接已关闭:连接意外关闭。
new DriverManager().SetUpDriver(new ChromeConfig());
我发现上面的代码行尝试检查最新版本的 WebDriver 并从https://chromedriver.storage.googleapis.com下载(如果不存在) 。但是,在 TFS 构建服务器上,外部 URL 已关闭,这可能就是原因。仍然不确定,我正在尝试在构建服务器上打开这个 Url。
[更新]我设法在 TFS 构建服务器上打开了 googleapis.com Url。现在浏览 microsoft.com 的示例测试正在运行,但我自己的网站(例如:http://domain 或 localhost/page.aspx)的测试仍然失败。收到以下错误:
OpenQA.Selenium.WebDriverException : unknown error: net::ERR_CONNECTION_REFUSED
(Session info: headless chrome=87.0.4280.66)
仅供参考,TFS 构建服务器上没有 IIS。此外,这是一个 Asp.Net WebForms 应用程序。
我需要在 IIS 或 IIS Express 上托管网站/代码吗?只是想知道没有托管如何测试能够浏览它?很抱歉这些问题,第一次这样做并且没有太多想法,如何将所有东西设置在一起。
注意:我想在构建中而不是在发布中执行此操作。在构建管道中是否可行?还是必须在发布管道中完成?我已经在无头模式下为 Chrome 配置了测试