在Azure Devops CI/CD管道中运行MS Edge浏览器的量角器E2E测试

在Azure Devops CI/CD管道中运行MS Edge浏览器的量角器E2E测试,azure,selenium-webdriver,azure-devops,protractor,webdriver-manager,Azure,Selenium Webdriver,Azure Devops,Protractor,Webdriver Manager,我有一个角度应用程序,使用量角器编写e2e测试。 我想使用Azure Devops管道在Chrome、Firefox和MS Edge(Chrome)浏览器中自动化这些任务。 我正在使用webdriver管理器来管理二进制文件 Chrome和Firefox支持headless模式&我能够绕过selenium服务器,使用directconnect:true选项在我的azuredevops管道中运行这些测试 由于webdriver manager对headless模式的支持不可用,我一直在努力在Edg

我有一个角度应用程序,使用量角器编写e2e测试。 我想使用Azure Devops管道在Chrome、Firefox和MS Edge(Chrome)浏览器中自动化这些任务。 我正在使用webdriver管理器来管理二进制文件

Chrome和Firefox支持headless模式&我能够绕过selenium服务器,使用directconnect:true选项在我的azuredevops管道中运行这些测试

由于webdriver manager对headless模式的支持不可用,我一直在努力在Edge browser中实现这些测试的自动化。 在本地计算机上,我通过执行以下操作启动selenium独立服务器 webdriver管理器启动--edge“pathToEdgeDriver”&通过在我的dragrator.conf文件中指定seleniumAddress,在edge中成功运行e2e测试

但我如何在Azure Devops管道中自动化此活动。 我正在使用具有交互模式的自托管Azure代理。 我正在项目目录中使用本地安装的量角器

在我的pipeine中,我有一个命令行任务,它使用webdriver manager启动命令在端口4444启动selenium服务器。 然而,管道在这项任务中被卡住了&永远不会前进。可能是等待selenium服务器关闭后再继续。 我还尝试使用powershell脚本作为后台任务启动selenium服务器: 启动流程节点\u模块/量角器/bin/webdriver管理器启动。 这也不行

管道中的下一个任务是执行量角器测试的命令行任务

有没有办法实现我在这里的目标

编辑:共享我的生成定义


经过一番挖掘,我终于找到了工作。 webdriver管理器需要使用--detach标志启动,以便在Azure DevOps管道中以可视模式(而不是无头)运行量角器测试

webdriver-manager start --edge "pathToEdgeDriver/msedgedriver.exe" --detach

您使用旧边缘还是新边缘?请查看下面的博客,看看它是否对您有帮助:。您可以在DevOps管道中运行
npm
命令。是的,我看过这个博客。这很有帮助&使我能够在我的dev机器上设置Edge自动化。正在尝试在DevOps管道上设置它。您是如何定义管道的?您是否使用了
npm
命令?您能否共享您的生成定义和整个日志(将system.debug设置为true)?@CeceDong MSFT已添加我的生成定义。我想我找到了一些东西,但还没能尝试一下。webdriver管理器start命令应使用--detach标志运行。它将确保代理继续执行下一个任务。我一试用就会发布更新。