当前位置: 首页 > 知识库问答 >
问题:

如何使用maven和testng在所有浏览器中运行特定的测试?

卫寒
2023-03-14

我使用"testng"框架和"maven"从命令行运行我的测试。

我想在所有浏览器中运行测试,我们需要为所有浏览器配置testng.xml(我已经这样做了)

但是我想在所有浏览器中运行特定的测试。有没有办法做到这一点?

我知道在单浏览器中运行特定测试时,我们会使用maven命令,如下所示:

mvn -Dtest=TestFile test

但是,无法同时指定testng和-Dtest,例如:

mvn -DsuiteXmlFiles="mytestng.xml" -Dtest="MyTest" test

(此外,pom.xml不能采取多值参数)请为这种情况提出建议

共有1个答案

赫连靖琪
2023-03-14

完成此操作的最简单方法是通过实现org.testng.IAnnotationTransform,在其中您可以使用System.get属性("test")-Dtest传递的值>作为要执行的方法。现在,在转换()方法中,除了通过-Dtest传递的方法之外,您将禁用其他所有方法

 类似资料:
  • 通过在testng.xml中像下面这样提到参数标记:

  • 问题内容: 我可以在Maven文档中找到如何运行的地方: 一次测试 所有测试都在一个测试类中 符合特定模式的类中的所有测试 但是,如何在一个包中运行所有测试?这可能吗? 我希望不需要修改或代码的解决方案。 问题答案: 例如,您也可以使用模式 运行以 de.mypackage 包结尾的类中的所有测试。 [更新2017/12/18]: 由于这已成为公认的答案,因此这里有一些进一步的信息: Maven使

  • 我正在使用GEB/Spock进行自动化测试。我正在使用Gradle作为我的构建工具。 我想调用不同的gradle任务来构建和运行一个特定的规范(测试)或一套规范。 显然,已经有了现有的构建指令,因为我可以调用,而且所有的规范都在Chrome上运行,我只是不知道如何添加更多的任务

  • 问题内容: 我正在将Selenium WebDriver与Java和TestNG框架一起使用。我想一次在一个代码中使用Firefox,IE,Chrome来进行跨浏览器测试。我只能将Firefox初始化为 但无法以相同方式初始化其他浏览器。例如: 给出错误 给出错误 如何初始化IE和Chrome并在所有所需的浏览器中执行测试? 问题答案: 对于C# 加 创建一个包含浏览器名称的配置文件。实现与配置文

  • 使用: Angular CLI在Chrome中默认运行测试,这很好,但是如果我需要在仅控制台环境(无头浏览器)中运行它们呢? 如果我可以在每次运行它时指定是否想要无浏览器,那就太好了,所以类似于: 编辑: 运行PhantomJS我得到了以下信息: PhantomJS 2.1.1 (Linux 0.0.0)错误类型错误:useValue,useFactory,数据不可迭代!http://localh

  • 我已经创建了一个测试套件,使用数据提供商数据工厂和我的TestNG文件发送浏览器详细信息作为参数。在testNG XML中,我调用我的数据工厂类。我也在使用浏览器堆栈进行测试(尽管我怀疑这与我遇到的问题有关) 当我不向testng文件添加parrelell=“true”时,测试运行没有任何问题。 我有一种感觉,这与每个浏览器使用的是同一个驱动程序有关,但我目前无法解决这个问题。 感谢您的指导。 这