gpt4 book ai didi

selenium - 如何使用 saucelabs 参数化我的 selenium 测试以运行多个场景

转载 作者:行者123 更新时间:2023-11-28 20:51:59 26 4
gpt4 key购买 nike

我有一个 selenium 自动化框架,它使用 junit 在我选择的浏览器上本地运行测试。我目前使用 junitparams 来参数化我的一些测试。例如

@RunWith(JUnitParamsRunner.class)
public class loginPage extends BaseTestClass{
@Test
@FileParameters(value = "src/test/resources/Test data/login.csv", mapper = CsvWithHeaderMapper.class)
public void login(String username, String pwd) throws Exception{
}
}

我有一些登录网站的测试,我使用 junitparams 和一个 csv 文件来运行多个不同的登录场景。我现在希望开始使用 saucelabs 在多个不同的浏览器/操作系统组合中同时运行我的测试。我的问题是如何同时实现 saucelabs 并行测试和参数化测试?我已经看到了 saucelabs 的示例,如下所示: https://github.com/saucelabs-sample-test-frameworks/Java-Junit-Selenium

但我会遇到的问题是我不能使用多个不同的运行者。我需要按照 Junit @RunWith 注释的要求使用单个运行者。有没有一种简单的方法可以将 saucelabs 示例中使用的 ConcurrentParameterized.class runner 和我当前用于本地执行的 JUnitParamsRunner.class 结合起来?

编辑:我发现以下内容证实我不能使用 2 个单独的运行者,并且似乎暗示合并两个运行者将非常困难。相反,我猜我将不得不改变 sauce labs 集成的处理方式。 https://github.com/Pragmatists/junitparams-spring-integration-example

最佳答案

我建议看一下 SauceryJ .它将 Jenkins、Sauce OnDemand 插件和您的测试代码与 SauceLabs 集成。

示例类 here .

全面披露:我编写并维护了 SauceryJ

关于selenium - 如何使用 saucelabs 参数化我的 selenium 测试以运行多个场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42860882/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com