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


    前言:

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

    解决过程:

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

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

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

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

     

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

    在pom文件中定义build方式:

    复制代码
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
            <!--maven-surefire-plugin的test目标会自动执行测试源码路径(默认为src/test/java/)下所有符合一组命名模式的测试类-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.7.1</version>
                <configuration>
                    <suiteXmlFiles>
                        <suiteXmlFile>testng.xml</suiteXmlFile>
                    </suiteXmlFiles>
                </configuration>
            </plugin>
        </plugins>
    </build>
    复制代码

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

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

     

    方案三 通过代码去运行 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集成推荐第二种;

    以上~~

     

    原文:https://www.cnblogs.com/chengbai/p/9948095.html

  • 相关阅读:
    oracle_深刻理解数据库的启动和关闭
    oracle_利用闪回功能恢复数据
    oracle_五千万数据插入测试
    java_eclipse_svn 与服务器同步时 ,忽略某类型文件和文件夹
    oracle_根据表名拼装语句
    crawler_网络爬虫之数据分析_httpwatcher
    113. Path Sum II (Tree; DFS)
    112. Path Sum (Tree; DFS)
    150. Evaluate Reverse Polish Notation (Stack)
    32. Longest Valid Parentheses (Stack; DP)
  • 原文地址:https://www.cnblogs.com/peachh/p/12009394.html
Copyright © 2020-2023  润新知