Jenkins+ant+jmeter小白入门篇(一)

发表于:2017-10-18 15:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:古佛青灯度流年    来源:51Testing软件测试网采编

  本次在windows版本中进行研究
  书写本文目的是为了跟我一样的小白们少走一些弯路,把我现在摸索出来的正确打开方式总结一下,望共勉,此外里面内容还有好多我不太懂的地方还请路过的大神们多多提出宝贵意见!
  首先了解下什么是接口测试:
  一、什么是接口测试?
  接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
  接口测试适用于为其他系统提供服务的底层框架系统和中心服务系统,主要测试这些系统对外部提供的接口,验证其正确性和稳定性。接口测试同样适用于一个上层系统中的服务层接口,越往上层,其测试的难度越大。
  接口测试实施在多系统多平台的构架下,有着极为高效的成本收益比,接口测试天生为高复杂性的平台带来高效的缺陷监测和质量监督能力。平台越复杂,系统越庞大,接口测试的效果越明显。
  基于接口测试的重要性,以及它比较容易自动化的特性,通过持续集成的接口监控能够及时的发现项目中存在的问题,这对持续运营的项目来说,非常重要。
  二、接口测试的流程
  1、项目启动后,测试人员要尽早找到开发人员拿到接口测试文档
  2、获取接口测试文档后,就可以进行接口用例的编写和调试
  3、接口用例编写调试完成后,部署到持续集成的测试环境中,
  4、设定脚本运行频率,告警方式等基本参数,进行接口的日常监控
  5、每日进行接口脚本的维护更新,接口异常的处理
  然后准备好测试脚本
  1.那个不知道jmeter怎么用的可以先学习一下jmeter的基本用法
  2.这里我提前准备好了一个jmx文件
  3.这里是我们使用非GUI模式运行测试脚本时可以使用的一些命令:
  -h帮助->打印出有用的信息并退出
  -n非GUI模式->在非GUI模式下运行JMeter
  -t测试文件->要运行的JMeter测试脚本文件
  -l日志文件->记录结果的文件
  -r远程执行->启动远程服务
  -H代理主机->设置JMeter使用的代理主机
  -P代理端口->设置JMeter使用的代理主机的端口号
  例如:
  jmeter-n-ttest.jmx-llogfile1.jtl-H192.168.1.1-P8080
  其中可以给jmx文件指定路径,也可以给输入日志文件指定输出路径
  执行结果.png
  如果要在windows机器上执行这个命令行,有两
  第一种方法:通过cmd进入到*\apache-jmeter-2.13\bin(也就是jmeter所在的目录)中执行
  第二种方法:通过给jmeter配置环境变量,
  1.JMETER_HOME:E:\workplace-jenkins\apache-jmeter-2.13\bin
  2.PATH:%JMETER_HOME%bin
  3.CLASS_PATH:%JMETER_HOME%lib
  注:这里有的时候用%JMETER_HOME%不好用,可以换成绝对路径;如果用第二种方法配置以后,则在任何路径下都可以执行jmeter命令了,我比较推荐这个;在这里最好能实现通过命令行执行jmx以后再往下进行
  Jenkins for windows的安装
  1.首先需要下载Jenkins的安装包,或者根据自己需要Jenkins官网下载
  2.下载好windows版以后,直接解压打开msi
  安装包.png
  3.安装的过程中选择好路径,然后就是傻瓜式的下一步,完成后会自动打开Jenkins的网站:
  http://localhost:8080
  即${安装机器的ip}:8080
  4.首次进入会有个密码,根据红色提示信息,复制到在文件管理器中找到密码
  Paste_Image.png
  选择推荐插件就行,运气好能少失败几个,然后就等着吧,等到进度条到头的时候(这时候Jenkins不一直在那不动,我也不知道为啥,欢迎指教),可以手动刷新页面再次进入Jenkins,选择continue就可以
  主页.png
  可以先去修改个密码省的下次登录还得找“系统管理->管理用户”
  安装好了以后还需要准备一个build.xml文件
  直接手动建立一个build.xml文件放在你认为合适的地方,因为一会建job还要用呢!
  <?xmlversion="1.0"encoding="utf-8"?>
  <projectname="JmeterTest"default="all"basedir=".">
  <tstamp>
  <formatproperty="time"pattern="yyyyMMddhhmm"/>
  </tstamp>
  <!--需要改成自己本地的Jmeter目录-->
  <propertyname="jmeter.home"value="E:\workplace-jenkins\apache-jmeter-2.13\"/>
  <!--jmeter生成jtl格式的结果报告的路径-->
  <propertyname="jmeter.result.jtl.dir"value="E:\workplace-jenkins\jmeter-restult\jtl"/>
  <!--jmeter生成html格式的结果报告的路径-->
  <propertyname="jmeter.result.html.dir"value="E:\workplace-jenkins\jmeter-restult\html"/>
  <!--生成的报告的前缀-->
  <propertyname="ReportName"value="TestReport"/>
  <propertyname="jmeter.result.jtlName"value="${jmeter.result.jtl.dir}/${ReportName}.jtl"/>
  <propertyname="jmeter.result.htmlName"value="${jmeter.result.html.dir}/${ReportName}${time}.html"/>
  <!--接收测试报告的邮箱-->
  <propertyname="mail_to"value="XX@gmail.com"/>
  <!--电脑地址-->
  <propertyname="ComputerName"value="andre"/>
  <targetname="all">
  <antcalltarget="test"/>
  <antcalltarget="report"/>
  </target>
  <targetname="test">
  <taskdefname="jmeter"classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/>
  <jmeterjmeterhome="${jmeter.home}"resultlog="${jmeter.result.jtlName}">
  <!--声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
  <testplansdir="E:\workplace-jenkins\test_case"includes="*.jmx"/>
  </jmeter>
  </target>
  <targetname="report">
  <xsltin="${jmeter.result.jtlName}"out="${jmeter.result.htmlName}"style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl"/>
  <!--因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝-->
  <copytodir="${jmeter.result.html.dir}">
  <filesetdir="${jmeter.home}/extras">
  <includename="collapse.png"/>
  <includename="expand.png"/>
  </fileset>
  </copy>
  </target>
  <!--发送邮件-->
  </project>
  查阅了大量的文章,写法都差不多,但是我还不能自己优化,故直接拿来,记录下待他日有深刻体会时再次修改,特别说明一个地方:${jmeter.home}/extras/jmeter.results.shanhe.me.xsl这个是我下载的一个第三方模板(提取码:d982),有兴趣你也可以下个试试,不过jmter自带了4个模板
  准备差不多了,现在就建个job体验一下
  新建.png
  然后:
  job名字.png
  别的不用管直接到增加构建步骤:
  构建.png
  Paste_Image.png
  添加参数:
  Targets:参数你研究一下build.xml文件就知道了
  buildfile:build.xml路径
  Paste_Image.png
  点击保存即可。
  然后点击构建,我这里成功了。
  Paste_Image.png
  Paste_Image.png
  还可以去看一下生成的报告:
  到现在为止一个Jenkins+jmeter+ant自动化的框架基本搭建完事了,剩下的就是看你怎样发挥你的想象力去创造了。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号