[英]Running against multiple projects/urls in single Playwright test run
几天以来,我一直在尝试解决这个问题。 找到了几个解决方法,但似乎没有按预期工作。
我的要求是针对多个 URL 运行 Playwright 测试。 单个项目 - 运行得非常好,我已经进行了一些测试。 现在我想介绍多个具有最佳配置的项目。
例如,我的 './tests/ProjectA' 针对 'https://projectA.home.com './tests/ProjectB' 运行针对具有不同凭据的 'https://projectB.home.com 等等。
我希望 A & B 在单次运行中针对每个版本运行。
我正在用项目查看这样的配置文件......
projects: [
{
name: 'Project A',
testDir: './tests/ProjectA',
use: {
baseURL: process.env.projectA,
},
},
{
name: 'Project B',
testDir: './tests/LTI/ProjectB',
use: {
baseURL: process.env.projectB
},
},
],
问题:我想检查当前工作人员在“globalSetup”级别指向哪个 testDir,以便我可以进行身份验证并相应地调出 URL。
如何在 globalSetup 级别访问项目信息? 或者我如何最好地处理这个问题? 感谢任何建议。 谢谢!!
据我了解,您想访问项目的当前 testDir,该项目在 playwright 配置中定义。
您是否尝试过使用“TestInfo 对象”的属性? 我相信它适用于像您这样的情况,您需要访问有关 object 项目的信息。
官方文档: https://playwright.dev/docs/test-advanced
这是我做的一个例子——我正在控制台记录 testInfo.project.testDir,但显然你会用它做一些其他合乎逻辑的事情。
test("that testDir is what I'm expecting it to be!", async ({ page, context }, testInfo) => {
//console.log(testInfo.project);
// Access project testDir
console.log(testInfo.project.testDir);
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.