typescript 如何在playwright中对多个url运行相同的测试

jk9hmnmh  于 2023-03-04  发布在  TypeScript
关注(0)|答案(1)|浏览(168)

我想对一些网址(1000+)运行相同的测试,我想尽可能快。我对每个网址循环测试,但当网址数量超过10个时,就会导致超时错误。我猜这可能是因为每个测试都是按顺序运行的,我们有办法并行运行测试吗?

const queries = getQueries();

for (let i=0; i < queries.length; i++){
    test.describe('LinkBroken'+ i.toString(), () => {
        test(queries[i].split('\t')[2], async ({ page }, testInfo) => {

            const url = getUrl(queries[i])
            await page.goto(url);
        
            const locators = page.locator('#b_content').locator('a:visible');
            const locator_count = await locators.count()
        
            for (let i=0; i <locator_count; i++){
                const link = locators.nth(i);
                await link.highlight();
                await link.click({trial:true});
            }
        });
    })
}

我试着把playwright的配置设置成下面的样子,但是fullyParallel: trueworkers: 10还是不行。

z4iuyo4d

z4iuyo4d1#

根据playwright文档,您应该在测试逻辑之前添加这一行。

test.describe.configure({ mode: 'parallel' });

更多信息点击这里
此外,您可能需要延长playwright.config.ts文件中的超时时间,因为一项测试的默认限制为30秒。

相关问题