如何多次运行同一个规范?

问题描述 投票:0回答:1

我正在使用jasmine和Appium进行ios测试。我需要在应用程序内创建数千篇文章。我正在尝试使用Saucelabs的并行测试。当我在conf文件中复制粘贴同一个spec文件x次时,它就会在saucelabs上运行x次两两。所以如果我这样写。

config.specs = [
    './test/specs/social/addPost.spec.js',
    './test/specs/social/addPost.spec.js',
    './test/specs/social/addPost.spec.js',
    './test/specs/social/addPost.spec.js',
    './test/specs/social/addPost.spec.js',
];

它会运行测试五次,从并行运行其中的两次开始,然后转到下一次,以此类推。我需要为应用程序创建1200个帖子,所以我必须并行运行这个文件1200次。我如何才能运行这个规范文件1200次?

jasmine appium webdriver-io saucelabs
1个回答
0
投票

有一种方法可以避免复制粘贴那么多次文件名,就是创建一个简单的函数,返回一个数组,里面有你要传递的文件名。下面是一个示例函数。

function getArrayOfSpecs(specFilePath, count) {
  let finalArray = [];
  for (i = 0; i < count; i++) {
    finalArray.push(specFilePath);
  }
  return finalArray;
}

最后在你的配置文件中调用这个函数,如下图。

config.specs = getArrayOfSpecs('./test/specs/social/addPost.spec.js', 1200);

在 saucelab 中运行这么多的并行测试并不是一件容易的事情,完全取决于你的许可证。根据这个 联系你不可能同时运行那么多测试。你可以和他们的销售和支持团队谈谈,看看是否有办法让你得到一个定制的许可证,前提是你愿意支付高昂的费用。

© www.soinside.com 2019 - 2024. All rights reserved.