很多小伙伴问老北为什么不出python全栈系类的,其实我只是换了一种方式来,之前是把一个系类写在一篇文字中然后发出来,我发现这样没什么人,确实几万字我码字都码吐了,更何况你们呢,所以我决定,还是按照顺序来,但是会把一个大节拆开很多部分来写,让你们也能更好的理解,我呢也能看到舒服(内心想法:主要是懒不想一次性写那么多)
还是先给不认识老北的小伙伴来个自我介绍哈:
凡哥我已经有着十二年互联网自动化测试和测试开发工程师,拥有丰富的自动化测试平台及测试开发经验,擅长接口测试、Python自动化全栈,测试开发平台等,参与过亿级用户金融系统测试开发平台架构以及开发,曾主导过多家一线互联网公司自动化测试平台或自动化测试框架的搭建,参与项目涵盖金融、电商、教育等多个行业。好就介绍这么多,接下来就开始正题废话少说让我们开始把
持续集成
持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成次,也
就意味着每天可能会发生多次集成每次集成都通过自动化的构建(包括编译,发布,自动化测试来验证,从
而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。
Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:持续的软件版本发布/
测试项目,监控外部调用执行的工作。
项目构建
通过构建工具对多个项目文件进行统批量的编译和运行。 比如,对多个Jmeter脚本批量运行。
Apache Ant.是一个将软件编译、 测试部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境
中的软件开发。
Jmeter Ant xml 配置文件
1.Ant关键元素
Ant的构件文件是基于XML编写的,默认名称为build.xml
project元素是Ant构件文件的根元素,Ant构件文件至少应该包含一个project元素,否则会发生错误。在每
个project元素下,可包含多个target元素。接下来熟悉project元素的各属性。
1) name属性
用于指定project元素的名称。
2 ) default属性
用于指定project默认执行时所执行的target的名称
3 ) basedir属性
用于指定jmeter基路径的位置。该属性没有指定时,使用Ant的构件文件的附目录作为基准目录。
2.target元素
它为Ant的基本执行单元,它可以包含个或多个具体的任务。 多个target可以存在相互依赖关系。它有如
下属性:
1)name属性
指定target元素的名称,这个属性在一个 project元素中是唯一的。 我们可以通过指定target元素的名称
来指定某个target.
2) depends属性
用于描述target之间的依赖关系,若与多个target存在依赖关系时,需要以"."间隔。Ant 会依照depends
属性中target出现的顺序依次执行每个target,被依赖的target会先执行。
3)if属性
用于验证指定的属性是否存在,若不存在,所在target将不会被执行。
4 ) unless属性
该属性的功能与if属性的功能正好相反,它也用于验证指定的属性是否存在,若不存在, 所在target将会被
执行。
5 ) description属性
该属性是关于target功能的简短描述和说明。
3.property元素
该元素可看作参量或者参数的定义,project的属性可以通过property元素来设定,也可在Ant之外设定。若
要在外部引入某文件,例如build properties文件,可以通过如下内容将其引入:
接下来让我们正式开始今天的学习!!!
●通过Jmeter+Jenkins+Ant实现接口自动化测试
●Jenkins通过插件安装Ant和Publish HTML reports (插件-可安装搜索-HTML Publish)
●修改Ant脚本
分析
index.html的文件内容如下:
cd /home/parallels/apache-httpd-2.4.41/htdocs
安装jenkins
cd /home/panlele/tools/apache-jmeter-5.0/bin
bin目录下修改vim
修改前:
#jmeter.save.saveservice.output_format=csv
修改后:
1.下载ant.tar.gz
2.解压到usr/local目录tar zxvf apache-ant-1.10.6-bin.tar.gz -C /usx/local/
3.cd /usx/local/
4.cd /etc/profile.d/
5. vim ant.sh 在/etc/profile.d下新建文件ant.sh而不是直接去编辑/etc/profile.d
按下小写的i字母,进入编辑模式
将这两行放进去
export ANT_ HOME=/usr/local/apache-ant-1.10.6
export PATH=$PATH:$ANT _HOME/bin
添加环境变量:vim /etc/profile
添加变量如下
export ANT_HOME=/home/ant-1.9.6 //ant的路径
export PATH=$ANT_HOME/bin:$ANT_HOME/lib:$PATH
重新加载环境变量:source /etc/profile
验证:ant -version
6.使配置文件生效 source /etc/profile.d/ant.sh
7.echo $PATH
查看环境变量里面有没有ant
8.cd /home/panlele/tools/apache-jmeter-5.0/extras
修改build. xml文件,修改了两个地方
---修改前
---修改后jmeter的安装路径位置在哪里,填写进去,使用pwd命令可以看当前目录位置
---修改前.
---修改后,修改index是因为后面要用index.html在浏览器中进行打开。
<
index指的是cd /home/panlele/tools/apache-jmeter-5.0/extras目录下要有个index.jmx文件
这样在这个目录下执行ant命令,会自动执行ant -index.jmx
9. cp /home/parallels/apache-jmeter-5.2/extras/ant-jmeter-1.1.1.jar /home/parallels/apache-ant-1.10.7/lib/
10. 验证
cd /home/pan1ele/too1s/apache-jmeter-5.0/extras
抉行ant脚本,如出現BUILD SUCCESSFUL则执行成功ok
/home/panlele/tools/apache-jmeter-5.0/extras目录下原本有个Test.jmx的文件。
[root@192 extras]# cp Test.jmx Test.jmx.bat 备份原来的Test.jmx文件
mv Test.jmx index.jmx 再把Test.jmx重命名为index.jmx
然后输入命令
ant
此时ant会把去执行index.jmx脚本
运行完后,然后extras多了2个文件
这两个文件都是通过build.xml运行实现的
build.xml 定义的test变量名的值是index 也可以定义成别的
1.打幵jenkins萸面: www. xxx . com:port
2.系銃管理-插件管理-可迭插件- -搜索-HTMI Publish----安装, ant,重启jenkins
3.全局配置JDK和ant 从主页面直接到“系统管理>Global Tool Configuration”,点击右边“JDK/ant安装”按钮,
4.新增自由风格的项目:选择ant,新建任务-任务名称Cjmeterstyle) -构建一个自由风格的软件項目-确定进入到任务jmeterstyle的配置界面
构建Invoke ant-高级
这里的build file填写jmeter目录下的extras下的build.xml路径
配置:/home/parallels/apache-jmeter-5.2/extras/build.xml
配置:
cd /home/parallels/apache-jmeter-5.2/extras
cp index.html /home/parallels/apache-httpd-2.4.41/htdocs
理解:上述命令是进入到jmeter的extras目录执行build.xml文件,build.xml会根据xml里面配置的内容去找叫做index.jmx的文件去执行,然后生成index.jtl和index.html
然后把在本路径下生成的index.html文件拷贝到apache-httpd的htdocs目录里
在这里构建时我遇到了一个问题:
ERROR: command execution failed.Maybe you need to configure the job to choose one of your Ant installations?
具体参考:https://www.cnblogs.com/yiyaxuan/p/12463261.html
5.Jenkins里面查看测试报告
注意:插件名称是:为了方便在Jenkins查看测试报告,需在Jenkins安装插件“HTML Publisher ” 即可
jenkins执行完extras的脚本---》会自动生成html和jtl文件
所以如果没有特定新建html文件夹的话,配置目录那里就直接写到/apache-jmeter-5.2/extras就行
还有httpd下的htdocs下的index.html
/home/parallels/apache-jmeter-5.2/extras/jmeter-results-detail-report_21.xsl
拷贝模板到extras目录下,要么模板名字改成-detail-report_21 要么模版名字不变,修改build.xml文件
1、安装apache-tomcat,下载jenkins.war包,将jenkins.war包放到tomcat的webapps下
2、启动tomcat
3、我们就可以访问http://114.115.141.191:8080/jenkins
jmeter+ant准备步骤:
1、将Jmeter所在目录下extras子目录里的ant-JMeter-1.1.1.jar复制到Ant所在目录lib子目录下
2、将jmeter-results-report_21.xsl放到jmeter的extras目录下(报告模版)
下载新的测试报告模板 将jmeter-results-shanhe-me.xsl放入apache-jmeter-3.1\extras的文件夹下
修改jmeter.properties的文件,使得报告有响应和请求的数据,如果没有更改,报告是没有请求和响应参数的信息值:
3、修改jmeter目录下的bin/jmeter.properties,找到jmeter.save.saveservice.output_format,去掉注释并设置为xml
4、tmp路径下创建脚本目录jmeter_test
5、jmeter_test文件夹下创建result_log和script两个子目录文件夹和build.xml文件 另外拷贝一份
说明:script目录用来存放jmeter脚本的,build.xml文件是ant的核心配置文件,
result_log文件夹下再创建html和jtl两个子目录,
jtl目录用来存放jmeter生成的结果文件,html用来存放最后生成的测试报告
6、ant执行脚本
build.xml相关配置如下–》一共配置有5步
第3步:如果想要数据更加准确-》修改jmeter目录下的bin/jmeter.properties-》将所有saveservice有关文件,将false改成true,并去掉注释
第7步:文件展示
jenkins搭建
环境:JDK1.8 tomcat7
步骤:
1、将jenkins.war放到tomcat的webapps下
2、启动tomcat
3、访问http://114.115.141191:8080/jenkins
4.解锁jenkins,输入管理员密码,路径:/root/.jenkins/secrets/initialAdminPassword
5.创建用户:autotest 密码:123456
jenkins配置
1、全局工具配置增加ant
2、创建一个自由风格的软件项目
3、构建步骤选ant,完成后先点应用,再点保存
4.构建后操作,生成html报告