gpt4 book ai didi

azure - 在 Azure Devops CI/CD 管道中为 MS Edge 浏览器运行 Protractor E2E 测试

转载 作者:行者123 更新时间:2023-12-03 02:40:38 24 4
gpt4 key购买 nike

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

Chrome 和 Firefox 支持 headless 模式,我可以使用 directconnect: true 选项在我的 Azure Devops 管道中运行这些测试,绕过 selenium 服务器。

我一直在努力在 Edge 浏览器中自动化这些测试,因为 webdriver-manager 对 headless 模式的支持不可用。在我的本地计算机上,我通过执行以下操作启动了一个selenium独立服务器webdriver-manager start --edge "pathToEdgeDriver" 并通过在我的 protractor.conf 文件中指定 seleniumAddress 成功运行 Edge 中的 e2e 测试。

但是如何在 Azure DevOps 管道中自动执行此事件。我正在使用交互式模式的自托管 Azure 代理。我在项目目录中使用本地安装的 Protractor 。

在我的管道中,我有一个命令行任务,它使用 webdriver-manager start 命令在端口 4444 启动 selenium 服务器。然而,管道陷入了这项任务并且永远不会向前推进。可能是等待 selenium 服务器关闭然后再继续。我还尝试使用 powershell 脚本启动 selenium 服务器作为后台任务:启动进程node_modules/protractor/bin/webdriver-manager start。这不太有效

管道中的下一个任务是执行 Protractor 测试的命令行任务。

有办法实现我在这里想做的事情吗?

编辑:分享我的构建定义。

Azure pipeline build definition for running e2e tests

最佳答案

经过一番挖掘,我成功了。webdriver-manager 需要使用 --detach 标志启动,以便在 Azure DevOps 管道中以可视模式(非 headless )运行 Protractor 测试。

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

关于azure - 在 Azure Devops CI/CD 管道中为 MS Edge 浏览器运行 Protractor E2E 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61439757/

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