我们的项目有一套Selenium测试,我们目前正在将它打包到一个jar中,目的是Jenkins将测试作为构建步骤运行。我们将jar安装到客户端VM的本地存储库中,该客户端VM配置为让Selenium指向Jenkins作为主机。我们遇到的麻烦是想办法让Maven / SureFire在我们安装的jar中找到Selenium / TestNG测试。我们有一个pom,其中包含测试在客户端上所需的所有依赖项,包括测试本身的jar,但是当我们运行“mvn test”时,没有找到测试。显然我们在这里遗漏了一些东西,有什么想法吗?感谢。
答案 0 :(得分:0)
surefire默认查找文件名,如Test * .java,* Test.java,* TestCase.java并执行它们。如果你的测试没有遵循任何这些模式,那么你必须明确地包含它们。 refer here
答案 1 :(得分:0)
创建一个调用testNG main方法的main方法,并将主要方法args []传递给testNG Main方法。现在你的测试罐将有它的主要方法来触发你想要的测试用例。您可以将与TestNG相同的参数传递给jar文件,如testng.xml文件或-testClass classapath等...请参阅下面的示例。
public static void main(String args[])
{
org.testng.TestNG.main(arg);
}
现在你只需要创建一个测试类的xml文件,并在jenkins中使用windows batch命令在远程机器上使用所需的testNG参数调用你的jar文件。