logo资料库

jenkins+ant+jmeter自动化接口测试框架搭建.pdf

第1页 / 共17页
第2页 / 共17页
第3页 / 共17页
第4页 / 共17页
第5页 / 共17页
第6页 / 共17页
第7页 / 共17页
第8页 / 共17页
资料共17页,剩余部分请下载后查看
jenkins+ant+jmeter自动化接口测试框架搭建-V1.0.0 接口测试 接口测试是测试中极为重要的环节,它所处的位置,有别于单元测试和功能测试,在单元测试之后,在功能测试 之前。每个接口都能代表某种功能,功能就有输入与输出。检验输入输出、各参数的取值以及异常情况,对于单元测试 来说,是一个补充,因为往往单元测试是以类、以方法来测试的。对于功能测试来说,是一个护盾,在经过接口测试的 验证后,能更高程度的保证功能点的正常执行。若能让接口定时测试或项目部署后自动进行验证(等同于回归测试), 显得极为方便、快捷,能更多地节省出时间,进行其他工作的进行。 基于以上的目的,搭建一套自动化接口测试框架显得尤为重要,在市面上测试接口的工具有很多,比如:LR、、 jmeter、、SoapUI、、Gatling、、Postman等等。打包构建的工具有Make、、Ant、、Maven等等。CI持续 集成的工具有Jenkins、、Hudson等等。这些工具各有千秋,只要能实现最初的目的,不管使用什么工具都是一个辅 助作用而已。而我选择的工具是Jenkins+Ant+Jmeter作为自动化接口测试框架的搭建。为啥使用这套框架是 由于最早时Jenkins上并没有maven插件,Jmeter设计打包构建测试的案例里用的就是Ant,基于以上背景,所以使用这套 工具有天然的成分在里面。 下面开始搭建这套框架的讲解。工欲善其事,必先利其器,在搭建之前,jenkins、ant、jmeter的linux版本包要准 备好。Java版本:版本:1.8.0_131;;Ant版本:版本:1.9.9;;Jenkins::2.65,并且都已安装至 ,并且都已安装至 Linux服务器上。环境变量设置如下: 服务器上。环境变量设置如下: 在windows上打开Jmeter,把脚本编辑完成,能成功执行并返回结果。
在windos安装好Ant,新增其环境变量。
编辑Jmeter在这个目录下D:\Program Files (x86)\apache-jmeter-2.13\apache-jmeter- 2.13\extras的build.xml文件文件。因为ANT打包构建就是依赖这个文件做处理的,这文件如何编辑如下: ----------------------------------------------------------------------------------------------------- ----------------- Sample build file for use with ant-jmeter.jar See http://www.programmerplanet.org/pages/projects/jmeter-ant-task.php To run a test and create the output report: ant -Dtest=script To run a test only: ant -Dtest=script run To run report on existing test output ant -Dtest=script report The "script" parameter is the name of the script without the .jmx suffix. Additional options: -Dshow-data=y - include response data in Failure Details -Dtestpath=xyz - path to test file(s) (default basedir). N.B. Ant interprets relative paths against the build file -Djmeter.home=.. - path to JMeter home directory (defaults to parent of this build file) -Dreport.title="My Report" - title for html report (default is 'Load Test Results') Deprecated: -Dformat=2.0 - use version 2.0 JTL files rather than 2.1
funcMode = ${funcMode}
Report generated at ${report.datestamp} Cannot find all xalan and/or serialiser jars
The XSLT formatting may not work correctly. Check you have xalan and serializer jars in ${lib.dir} basedir = ${basedir} jmeter.home = ${jmeter.home} ${xslt.classpath} --------------------------------------------------------------------------------------------------------- ------------------ 在jmeter.properties上更改以下配置。 并把以下的配置在jmeter.properties进行修改。 --------------------------------------------------------------------------------------------------------- ------------------- # true when field should be saved; false otherwise # assertion_results_failure_message only affects CSV output jmeter.save.saveservice.assertion_results_failure_message=true # # legitimate values: none, first, all #jmeter.save.saveservice.assertion_results=none # jmeter.save.saveservice.data_type=true jmeter.save.saveservice.label=true jmeter.save.saveservice.response_code=true # response_data is not currently supported for CSV output jmeter.save.saveservice.response_data=true # Save ResponseData for failed samples jmeter.save.saveservice.response_data.on_error=true jmeter.save.saveservice.response_message=true jmeter.save.saveservice.successful=true jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true jmeter.save.saveservice.subresults=true jmeter.save.saveservice.assertions=true jmeter.save.saveservice.latency=true jmeter.save.saveservice.connect_time=true jmeter.save.saveservice.samplerData=true jmeter.save.saveservice.responseHeaders=true jmeter.save.saveservice.requestHeaders=true jmeter.save.saveservice.encoding=true jmeter.save.saveservice.bytes=true jmeter.save.saveservice.url=true jmeter.save.saveservice.filename=true jmeter.save.saveservice.hostname=true jmeter.save.saveservice.thread_counts=true jmeter.save.saveservice.sample_count=true jmeter.save.saveservice.idle_time=true --------------------------------------------------------------------------------------------------------- ------------------- 再在user.properties上增加如下配置: 编辑好后,在windos的cmd命令行,执行一次,如果显示下列信息表示已经成功。
分享到:
收藏