我的剧作家脚本在本地运行良好。但是,相同的脚本在 Azure DevOps 管道中失败,并出现以下错误:
错误:Playwright Test 不希望在此处调用 test.describe()。 最常见的原因包括:
- 您正在配置文件中调用 test.describe()。
- 您正在配置文件导入的文件中调用 test.describe()。
- 您有两个不同版本的@playwright/test。这通常会发生 当 package.json 中的依赖项之一依赖于 @playwright/test 时。
我收到错误:
Azure管道yml文件:
我已经确定了
从您的错误消息中,我注意到测试文件位于路径下:
TestCase-10459-StandarReport/tests/dashboard/alarm_count_quick_lists
。
在 YAML 示例中,您正在使用文件路径执行 playwright 命令:
tests/dashboard/alarm_count_quick_lists/xxx.js
脚本任务的默认工作目录是 s
文件夹。
所以问题的原因可能是命令执行路径有问题。
测试类似的YAML示例,我可以重现相同的问题:
要解决此问题,您需要在 npx playwright 测试任务中设置正确的
workingDirectory
。
例如:
- script: npx playwright test alarm_count_list.spec.js
displayName: 'Run Playwright test '
workingDirectory: $(System.DefaultWorkingDirectory)/TestCase-10459-StandarReport/tests/dashboard/alarm_count_quick_lists
env:
CI: 'true'
在这种情况下,npx playwright test命令将在正确的路径中找到js文件。