如何在lambdatest中的多个浏览器上运行测试?

时间:2020-04-24 08:24:17

标签: testing automation automated-tests e2e-testing testcafe

我有一个lambdatest和testcafe设置,lambdatest帐户有一个并行运行。 据我了解,testcafe不支持测试排队。 所以我的问题是我如何在lambdatest上(一个接一个地没有排队)在不同的浏览器/操作系统组合上运行测试。

先谢谢了。

2 个答案:

答案 0 :(得分:2)

您可以为每个浏览器创建多个运行器,然后依次运行它们。您可以在GitHub的以下线程中找到示例: https://github.com/DevExpress/testcafe/issues/2495#issuecomment-421090352

答案 1 :(得分:1)

如Dmitry所述,您可以为每个浏览器创建多个运行器,然后依次运行它们。

以下是示例代码,可通过自定义testcafe运行程序在LambdaTest Selenium Grid上运行并行测试。

const browsers = [
  ['lambdatest:Chrome@74.0:Windows 10"', 'lambdatest:Chrome@75.0:Windows 10'],
  ['lambdatest:Chrome@76.0:Windows 8', 'lambdatest:Chrome@77.0:Windows 8'],
];
const runTest = async browser => {
  console.log('starting tests');
  await createTestCafe('localhost', 1337, 1338)
    .then(tc => {
      testcafe = tc;
      const runner = testcafe.createRunner();
      return runner
        .src(['web-tests/*.ts'])
        .browsers(browser)
        .run();
    })
    .then(async failedCount => {
      console.log('Tests failed: ' + failedCount);
      await testcafe.close();
      return;
    });
}
const runAllBrowsers = async () => {
  for (const browser of browsers) {
    await runTest(browser);
  }
}

有关更多信息,请参阅GitHub repository of LambdaTest & Testcafe。干杯!