环境信息: github
Jenkins:华为云搭建,个人建议,jenkins的版本高一点,因为很多插件在低版本的Jenkins上都没办法安装,我原来的版本是jenkins-2.222.1-1.1.noarch.rpm,后来重装成了jenkins-2.263.2-1.1.noarch.rpm才可以。
安装单元测试插件
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.10</version>
<scope>compile</scope>
</dependency>
下面的${xmlFileName},是后续通过Jenkins的参数化部署做准备,我们部署的时候写哪个xml文件,就执行哪个xml文件。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
<configuration>
<argLine>-Dfile.encoding=UTF-8</argLine>
<suiteXmlFiles>
<!--suppress UnresolvedMavenProperty -->
<suiteXmlFile>${xmlFileName}</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
编写测试用例
准备两个测试用例,分别写在两个不同的testng.xml文件里。
package com.newcrud.testngTest;
import org.testng.Assert;
import org.testng.annotations.Test;
public class TestFour {
@Test
public void testA() {
System.out.println("testA");
Assert.assertEquals(1,1);
}
@Test
public void testB(){
System.out.println("testB");
Assert.assertEquals(1,1);
}
}
package com.newcrud.testngTest;
import org.testng.annotations.*;
public class TestTwo {
@Test
public void testOne(){
System.out.println("TestTwo的testOne");
}
}
编写testng.xml
testng.xml
< xml version="1.0" encoding="UTF-8" >
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="All Test Suite">
<test verbose="2" preserve-order="true" name="/Users/zc/IdeaProjects/NewCRUD/src/test/java/com/newcrud" time-out="3000">
<classes>
<class name="com.newcrud.testngTest.TestFour"></class>
</classes>
</test>
</suite>
testng2.xml
< xml version="1.0" encoding="UTF-8" >
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="All Test Suite">
<test verbose="2" preserve-order="true" name="/Users/zc/IdeaProjects/NewCRUD/src/test/java/com/newcrud" time-out="3000">
<classes>
<class name="com.newcrud.testngTest.TestTwo"></class>
</classes>
</test>
</suite>
提交代码到github
为什么这个单独要写,是因为遇到了下面这个问题。
jenkins添加git+maven+java
系统管理->全局工具配置
分别配置git、maven、jdk。
jdk
java_home获取方法:
[root@hecs-82454 local]# cat /etc/profile
git
路径获取方法:
[root@hecs-82454 local]# whereis git
git: /usr/bin/git /usr/share/man/man1/git.1.gz
maven
同jdk获取方式 :
M2_HOME和MAVEN_HOME
有的教程里说的是获取MAVEN_HOME,其实MAVEN_HOME是低版本的maven的配置,M2_HOME是高版本的maven的配置,现在大部分都是高版本的maven。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理