Jenkins集成TestNG Junit自动化测试

自动化测试是Jenkins持续集成和部署的又一核心价值体现,我们先来做一个基于Junit 的  TestNG 测试。我们的实现步骤是:1、在Eclipse上安装TestNG插件;2、编写Junit测试及TestNG.xml配置;3、在Jenkins上安装xUnit插件;4、添加构建任务的测试及报告配置。另外除了Junit测试还有模拟浏览器测试的Selenium测试。

在Eclipse上安装TestNG插件

采用update URL方式进行安装:

输入网址:http://beust.com/eclipse


安装完成后重启eclipse后生效。查看TestNG是否安装成功:


上面界面引用自:http://www.cnblogs.com/testlurunxiu/p/5987949.html


编写Junit测试及TestNG.xml配置

首先,在maven项目上导入TestNG依赖环境:

导入TestNG依赖包

新建testng class文件



创建自己的Junit TestNG配置:

Jenkins集成TestNG Junit自动化测试_第1张图片

此时会生成TestNG.xml和FirstTest.java到测试目录下。我们可以根据此方式添加其他的测试,如SecondTest.java和ThirdTest.java

Jenkins集成TestNG Junit自动化测试_第2张图片

下面我们来看下TestNG.xml的配置:



	
		
			
			
			
		
	 
 

注:SecondTest.java和ThirdTest.java是手动配置进去的,因为TestNG.xml只生成一次。

在Jenkins上安装xUnit插件

xUnit:支持非Java以外的Junit测试。

Jenkins集成TestNG Junit自动化测试_第3张图片

注:Jenkins 推荐插件安装已经装过Junit Plugin了。


添加构建任务的测试及报告配置

项目在编译打包的时候需要用到testng依赖包,在pom.xml内添加如下配置:


		
		    org.testng
		    testng
		    6.11
		    test
		
现在来配置Jenkins,因为我们之前项目没有添加Junit测试,所以构建命令直接使用: mvn clean install就可以了,加入Junit需要跳过测试命令为: clean install -Dmaven.test.skip=true;当我们需要执行测试类的时候,我们需要配置单元测试命令( mvn test) 或者 单元测试&集成测试命令( mvn verify)。如下图所示:

Jenkins集成TestNG Junit自动化测试_第4张图片

目前阶段执行测试用例使用mvn  test和mvn verify都可以。接下来我们配置Test NG  Junit 测试报告(Publish Junit tset result report 配置操作自动前置):

Jenkins集成TestNG Junit自动化测试_第5张图片

注意:TestNG版本6.x以上测试报告的地址为**/target/surefire-reports/*.xml而不是‘myproject/target/test-reports/*.xml’,您可以通过构建任务的工作空间去找到对应的测试报告路径,如下所示:

Jenkins集成TestNG Junit自动化测试_第6张图片


测试结果相关数据展示

整体测试历史成功失败统计:

Jenkins集成TestNG Junit自动化测试_第7张图片

点击彩色部分进入用例分析:

Jenkins集成TestNG Junit自动化测试_第8张图片

进入测试报告目录进行查看:

index.html

Jenkins集成TestNG Junit自动化测试_第9张图片

Jenkins集成TestNG Junit自动化测试_第10张图片

emailable-report.html

Jenkins集成TestNG Junit自动化测试_第11张图片


TestNG 自动化Junit测试到此已配置完成。

注意:如果现在eclipse运行TestNG测试用例只需要在TestNG.xml文件上右键执行Run as >TestNG suite即可。

TestNG maven插件: http://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html

Selenium浏览器模拟测试介绍:http://www.seleniumhq.org/

你可能感兴趣的:(DevOps)