Selenium Web 自动化 - 项目持续集成
Selenium Web 自动化 - 项目持续集成
2017-02-13
1环境准备
1.1 安装git
1.2 安装jenkins
1.3 安装jenkins插件
1.4 jekins系统配置
2 新建Jenkins构建项目
3 执行构建
3.1 乱码问题
项目持续集成测试,可以每天定时执行自动化构建项目(包括编译,发布,自动化测试),发送测试结果。
1 环境准备
1.1 安装git
GIT下载地址:https://git-scm.com/
安装过程中“Adjust your PAHT environment”这一步选择“Use git and optional unix tools form the windows command prompt”会把相关的命令加入到系统path变量下,如下图所示。其它默认安装即可。
1.2 安装jenkins
Jenkins下载地址:https://jenkins.io
安装完成之后,打开jenkins主页(系统会自动打开网页),地址默认为:http://localhost:8080/
1.3 安装jenkins插件
系统管理->插件管理,安装以下插件:
- git plugin:帮助集成管理git项目
- email extention plugin:发送邮件扩展工具
- maven integration plugin:执行maven命令的图形化交互性插件
安装成功后,如下图所示:
1.4 jekins系统配置
系统管理->系统配置
- 第1步:配置maven,MAVEN_HOME :本地安装目录
- 第2步:配置jdk
- 第3步:配置git
- 第4步:配置extended e-mail notification 和 邮件配置通知服务器
password:腾讯要求第三方客户端使用要输入16位授权码所以需要在qq邮箱去开启这个16位授权码,可以在请求邮箱设置->账户 里设置 - 第5步:配置jekins Location
2 新建Jenkins构建项目
- 第1步:项目名称和描述
- 第2步:资源管理配置
这里用coding(https://coding.net)做项目托管,它是基于git的,国内服务器,比较稳定,速度也快。 - 第3步:构建触发器
除了配置如何触发,还要配置下maven执行命令,如下代码所示。
Jenkins构建顺序:jenkins项目构建的时候,会从autotest/pom.xml文件开始执行,pom.xml文件是所有测试的开头。pom.xml内容包含testng.xml地址,test命令会根据pom.xml最终执行testng.xml,而testng.xml包含要测试的用例。 - 第4步:配置构建之后的操作
如下图所示,发送构建后会发送邮件
此外,还需要配置下,什么时候触发发送邮件这个操作,我们点击“Advanced Settings…”,然后选择Always选项
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <!-- 解决用maven执行test时 日志乱码的问题,详见:http://www.cnblogs.com/discuss/archive/2010/10/27/1862225.html --> <argLine>-Dfile.encoding=UTF-8</argLine> <!-- 解决maven oom问题http://blog.csdn.net/e5945/article/details/7740904 --> <argLine>-Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=128m</argLine> <forkMode>never</forkMode> <suiteXmlFiles> <suiteXmlFile>testng.xml</suiteXmlFile> </suiteXmlFiles> <!--定义maven运行测试生成的报表路径 --> <reportsDirectory>./result/test-report</reportsDirectory> </configuration> </plugin>
3 执行构建
回到jenkins主页之后,我们看到一个新建的项目显示出来,点击开始图标,就可以开始构建
3.1 乱码问题
点击项目链接,看到左下角build History,找到当前构建的版本,点击菜单栏“Console Output”,发现运行的时候输入的中文日志可能出现乱码。这是由于jenkins的编码问题导致,我们需要修改下jenkins的配置文件,设置字符编码为:UTF-8即可。
打开jenkins的安装目录,找到jenkins.xml文件,打开jenkins.xml文件,添加-Dfile.encoding=utf-8 到<arguments>标签中,如下面的代码所示:
<arguments>-Xrs -Xmx512m -Dfile.encoding=utf-8 -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080</arguments>
重启下jekins
重启jenkins服务,有以下两种方法:
- 打开运行,输入:“services.msc”,找到Jenkins服务,重启
- 输入http://localhost:8080/restart