我有Maven TestNG Selenium Java的配置
我想从POM运行特定的Java类。XMl文件,
试:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>demo.java</mainClass>
</configuration>
</plugin>
</plugins>
</build>
就我提到的,有共同的解决方案,但它不起作用。它没有运行任何东西,Build是成功的,
请注意,在使用TestNG时,在任何Java类中都没有公共静态空main(String args[])。
如果能解释一下就太好了
到目前为止,我已经尝试过:
从 Maven 开始,我如何运行一个位于 src/test/java 下的类?
如何从maven命令行执行java类文件
如何使用Maven执行程序?
Maven运行项目
我记得,有一次我经历了这一切,它成功了。
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
<configuration>
<includes>
<include>demo.java</include>
</includes>
</configuration>
</plugin>
</plugins>
参考资料 : http://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html
因为我们正在使用Maven testng。在pom中。xml u可以使用maven surefire插件来运行testng.xml中提到的特定测试用例。pom中的变量TestCaseName。xml(多个测试用例,分开)。您可以在Testng中提到您的测试用例。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<properties>
<property>
<name>testnames</name>
<value>${TestCaseNames}</value>
</property>
</properties>
</configuration>
</plugin>
在TestNg中:
<test name="TestCase1">
<classes>
<class name="com.company.test">
<methods>
<include name="testCase1" />
</methods>
</class>
</classes>
</test>
exec maven插件
需要公共静态void main(String[]args)
方法。
为了从< code>exec-maven-plugin运行TestNG类,您必须在< code>main方法中运行TestNG。尝试此解决方案:
public static void main(String[] args) {
TestNG testSuite = new TestNG();
testSuite.setTestClasses(new Class[] { MyClass.class }); //it would be probably name of the class in which `main` method is located
testSuite.addListener(new MyListener()); //optional
testSuite.setDefaultSuiteName("Test Suite");
testSuite.setDefaultTestName("Test Name");
testSuite.setOutputDirectory("/my/output/dir");
testSuite.run();
}
我想使用maven命令从命令行运行一个特定的测试套件。我使用的是TestNg框架。 我的pom有以下配置设置: 在我正在运行的命令行上:
问题内容: 我想使用TestNG以特定顺序运行Selenium WebDriver(Java)测试类。 例如。我有3个类,例如Test1,Test2和Test3。我要按Test2,Test1和Test3的顺序运行。是否可以不分组? 我尝试了以下方式,但是我以其自己的顺序(字母顺序)运行。 还有其他方法吗?如果没有分组,这可能吗? 问题答案: 只需使用 preserve-order =“ true”
我有一个maven项目,有3个TestNG套件和4个测试类,我想在jenkins中运行一个特定的套件,我搜索了很多,但只找到了一个命令放在goal来指定特定的套件,但当我这样做时,它也会运行所有其他套件。我被困在这里很长时间了,请引导我完成这个过程。我还想知道是否有任何设置我可以这样做,如果我选择一个套件运行,我可以运行该套件的任何特定类。我已附上我的项目结构在这里的形象,任何输入将不胜感激。谢谢
我有一个testng xml文件,它被设置为运行一个特定的类,该类的方法包含以下组标记或被分组为以下类型之一: 并行测试 顺序测试 烟雾测试 虽然我的一些测试被指定为并行或顺序测试,但一些测试可能包含一个额外的标签“冒烟测试”。在这个场景中,我希望能够只运行那些被归类为“烟雾测试”的组件。当我运行测试时,它要么找不到任何测试,要么只是运行所有分组为“sequential-test”的测试。我似乎不
问题内容: 一般问题是: 使用语法时,可以将其转换为功能接口等类型吗? 如果不是,那么如何在Java 8中间接调用方法引用? 举例来说,假设我们想要一个as: 它可以用作: 在以上代码段中,一种选择是但非常严格。正如这个答案所提到的,在b75版本之前,有一个可用的并且可能很方便。 另一方面,任何可能以某种方式转换为的机会? __Java专家 注意事项 :请根据需要改进问题的标题。 问题答案: 我认
测试运行程序文件-