Microsoft Playwright Testing 公共预览版发布
微软最近宣布了 Microsoft Playwright Testing 的公共预览版,这是一项通过 Azure 大规模运行 Playwright 测试的新服务。
Playwright 框架简介
Playwright 是一个快速发展的开源框架,专为现代 Web 应用程序提供可靠的端到端测试和自动化功能。它使用单一 API 控制 Chromium、Firefox、WebKit 和 Opera 浏览器。微软将通过托管服务提供该框架,声称用户可以“在同时跨不同操作系统和浏览器组合的情况下,以更高的并行化运行 Playwright 测试”。
测试运行机制
通过 @playwright/test 运行器,测试在独立的并行工作进程中运行,每个进程启动自己的浏览器。增加并行工作进程的数量可以减少完整测试套件的运行时间。然而,在本地或持续集成(CI)管道中运行测试时,本地机器或 CI 代理机器的中央处理单元(CPU)核心数量存在限制。
云服务优势
微软 Azure 开发工具产品合作伙伴总监 Mandy Whaley 表示:
通过使用 Microsoft Playwright Testing 服务,您可以将工作进程数量扩展到云规模。由 @playwright/test 编排的工作进程继续在本地运行,但资源密集型的浏览器实例现在在云中运行。
通过 Microsoft Playwright Testing,开发者可以利用服务提供的可扩展并行性,在 Windows 和 Linux 上的所有现代渲染引擎(如 Chromium、WebKit 和 Firefox)以及 Google Chrome for Android 和 Mobile Safari 的移动仿真中同时运行 Web 应用程序测试。此外,服务管理的浏览器确保功能性和视觉回归测试的一致性和可靠性,无论测试是从 CI 管道还是开发机器运行的。
使用步骤
要有效使用 Microsoft Playwright Testing,开发者必须首先在 Azure 中创建工作区,随后生成访问令牌和区域特定的服务端点。开发者可以将这些令牌和端点输入环境变量,并在项目中利用这些设置,例如创建一个 playwright.service.config.ts 文件与 playwright.config.ts 文件并列。最后,他们可以使用 Playwright CLI 或 Visual Studio Code 运行测试。
在远程浏览器上运行 Playwright 测试的 CLI 命令示例如下:
npx playwright test --config=playwright.service.config.ts --workers=20其他测试工具
Playwright Testing 的替代方案包括流行的 Selenium、Cypress.io 和 Puppeteer。这些工具也可以在云中扩展使用,例如 Cypress.io 提供了 Cypress Cloud,Puppeteer 可以在 Cloud Functions 中运行。
社区反馈
关于 Playwright 是否将以服务形式存在,Vyne Dental 的软件工程师 David Osolkowski 在 X 上发推表示担忧:
这是否意味着 Playwright 将以当前形式消失,仅作为服务提供和维护?
微软开发者部门副总裁 Amanda Silver 在回复中澄清:
不会。Playwright 将继续作为一个开源框架独立存在。
更多信息
更多关于 Microsoft Playwright Testing 的详细信息可在文档页面和 GitHub 仓库中找到,定价信息可在定价页面查阅。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。