windows+tomcat+jenkins+maven+testng+cucumber+selenium

自动化持续集成的环境搭建

目标:能够有一个自动触发自动化测试代码的平台,定时执行自动化测试用例,输出测试报告,发现错误则发报警邮件到指定邮箱,解放双手测试主流程

首先,我们要实现jenkins+maven+testng+cucumber来实现自动化触发这个步骤

 

原理:jenkins能够通过svn获取你最新代码并且进行编译,然后通过构建任务的方式通过maven命令,配合Maven Surefire Plugin插件执行单元测试

jenkins配置如下图:

1.在jenkins上新建一个maven项目

2.项目配置如下图

方便起见,一般都会设置一个构建的最大个数,不然构建的任务就会越来越多...

源码管理,填上你上传到svn的代码地址,用户名账号可以用自己的svn账号

构建触发器,这里选择定时构建,构建格式为* * * * *(类似cron表达式,lts定时任务那个),五个星号分别代表:分钟,小时,一个月的第几天,表示第几月,表示一周中的第几天

下图中我的设置为每天凌晨3点0分触发构建,具体用法可以百度,很多资料

Bulid构建,Root POM就填pom,Goals and options表示你构建时候要执行的maven命令,下图中我指定执行TestA和TestRunner 两个测试类,更多用法也可百度

 

构建后操作,这里选择cucumber reports插件,该插件只需要在jenkins上安装好就可以直接选择使用

(构建后操作还可以选择构建失败发送邮件之类的,这个暂时没有配置,因为还没太多具体可以执行的自动化用例,大概也是一个插件可以解决的事情,这个想了解也可以自行百度)

插件效果图如下

 

3.maven工程的pom文件配置,maven-compiler-plugin插件是指定编译时使用的jdk版本,

maven-surefire-plugin是执行单元测试的插件,配合build构建时候的maven命令,可以执行执行xml文件或者指定的java类,具体自行百度

4.testng的xml执行文件

文件里面可以指定需要执行的测试类

5.cucumber的run文件不要使用标签@runwith,必须要继承testng-cucumber这个jar包里面的AbstractTestNGCucumberTests类

6.把测试结果截图发邮件到个人邮箱

这里发邮件分为几个步骤

一、生成cucumber-report图片报告到本地,格式就是jenkins那个能查看的cucumber-report报告,代码如下

二、页面截图,用webdriver的方式(谷歌浏览器)打开本地报告,然后截图,截图代码如下:

三、发送截图邮件,代码有点长,如下

 

 

注意事项:

pom文件里面依赖的jar包一个都不能少,所有代码都在svn的E:\svn\fangcang\TestGroup\11-AutoTest\trunk这个路径下,随时都可以查看,多看多问自然就明白了。

 

 

用以上方法,足以满意基本的接口自动化测试的持续集成,但是由于selenium是需要页面支持的(启动jenkins本地服务器上的浏览器),

所以jenkins如果部署在linux服务器上,就需要采用无界面模式来完成web自动化,由于这个问题还没攻克,有志者大可一试,退而求其次,我们这里暂时在虚拟机上部署一套windows系统来满足web自动化的需求

原理:在jenkins上构建的任务其实都依赖是jenkins所在服务器本身的环境(jdk、maven、tomcat),所以只需要在windows虚拟机上安装chrome和chromedriver,再通过tomcat容器启动jenkins的war包,再在jenkins上创建任务就能跑web自动化了

所以windows虚拟机需要做如下几件事情:

1.安装jdk,配置环境变量

2.安装tomcat容器,配置环境变量

3.安装maven,配置环境变量

4.下载chrome

5下载chromedriver

6.下载jenkins的windows系统对应版本的war包

7.配置jenkins环境,创建自动构建的定时任务

8.编写自动化测试代码

完成以上,web自动化的持续集成就能跑起来了

以上步骤,1.2.3.4.5比较基础,百度完全能找到比我描述更详细的答案,所以忽略,

6,jenkins的war下载下来之后,扔到tomcat容器下的webapps目录下,如下图,然后启动tomcat容器,打开浏览器输入loaclhost:8080/jenkins 就能访问jenkins了

7.jenkins的环境配置,配置上jdk和maven的本地安装路径就行

8.测试代码编写,这个任重而道远~!

9.点击立即构建(或者等构建触发器里定义的时间到了),web自动化就可以跑起来了

 

注意事项:

现在使用的windows虚拟机jenkins插件下载不稳定,老是连接超时,不知是什么问题,如果有想要用到的插件,多试几次就行

代码里selenium设置chromedriver的地址一定要和windows虚拟机上的chromedriver放的位置保持一致

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值