Jenkins如何集成运行testng.xml文件的解决方案

前言:

在我们使用maven+testng+restassured+reportng实现接口测试框架时,会发现在本机创建项目,进行一些pom引用和简单的封装后,很快就可以直接利用idea自带的testng插件直接运行testng.xml文件中我们写好的case,但当我们脱离了idea等编辑工具时,怎么让我们的接口测试项目跑起来呢???有了这个思考后,就剩怎么实现了

解决过程:

解决方案一,利用命令运行;

命令如下: java org.testng.TestNG testng1.xml

看起来很简单把,一句命令搞定,但是发现根本行不通,一直报错“找不到或无法加载主类 org.testng.TestNG”,百度说的是testng包没有加载,环境变量设置有问题。然而设置好了环境变量也没什么用,此种方式正确的解决方式如下,别人写的很清晰,所以直接甩链接了:TestNG如何用命令行运行

本机可以执行命令后,打开jenkins,添加构建后操作,选择excute windows batch command,输入执行的命令就好,如果是在linux上,则选择excute shell (前提环境变量等准备好)


1.png

解决方案二:例用maven运行testng.xml文件

在pom文件中定义build方式:


    
        
            org.apache.maven.plugins
            maven-compiler-plugin
            
                UTF-8
                1.7
                1.7
            
        
        
        
            org.apache.maven.plugins
            maven-surefire-plugin
            2.7.1
            
                
                    testng.xml
                
            
        
    

输入mvn test就可以编译执行testng.xml文件了,不依赖什么环境配置等,感觉比第一种方便多了

在jenkins中直接安装maven插件,如下图利用插件去build,直接就运行了一遍testng.xml文件啦~


2.png

方案三 通过代码去运行 testng.xml文件

public class TestngRun { public static void main(String[] args){

        TestNG testng = new TestNG();

        List suites = Lists.newArrayList();

        suites.add("C:/WorkSpace/mavenRes/testng.xml");//path to xml..
 testng.setTestSuites(suites);

        testng.run();

    }

}

同方法一的jenkins中 输入Javac命令+该java文件路径 就能运行tesng.xml文件;

*个人偏向第二种和第三种方式,第一种依赖多不稳定,和jenkins集成推荐第二种;

以上~对你有帮助的话,点个喜欢❤️吧~~

欢迎关注我的同名,博客,Github~~~

你可能感兴趣的:(Jenkins如何集成运行testng.xml文件的解决方案)