繁体   English   中英

使用Surefire在jar中执行TestNG / Selenium测试

[英]Using Surefire to execute TestNG/Selenium tests in a jar

我们的项目具有一套Selenium测试,目前我们正在将它们包装到jar中,Jenkins的意图是将测试作为构建步骤运行。 我们将jar安装到客户端VM的本地存储库中,该客户端VM已配置为让Selenium指向Jenkins作为主机。 我们遇到的麻烦是想办法让Maven / SureFire在我们安装的jar中找到Selenium / TestNG测试。 我们有一个pom,其中包含测试在客户端上所需的所有依赖关系,包括测试本身的jar,但是当我们运行“ mvn test”时,找不到测试。 显然,我们在这里缺少什么,有什么想法吗? 谢谢。

默认情况下,surefire查找文件名,例如Test * .java,* Test.java,* TestCase.java并执行它们。 如果您的测试不遵循这些模式中的任何一种,那么您必须明确地将其包括在内。 请参考这里

创建一个调用testNG main方法的main方法,并将您的主要方法args []传递给testNG Main方法。 现在,您的测试jar将具有触发所需测试案例的主要方法。 您可以将与TestNG相同的参数传递给jar文件,例如testng.xml文件或-testClass classapath等。请参见下面的示例。

public static void main(String args[])
{
    org.testng.TestNG.main(arg);
}

现在,您只需要创建一个测试类的xml文件,并在jenkins中使用Windows batch命令使用所需的testNG参数在远程计算机上调用您的jar文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM