Jmeter+Ant+Jenkins框架搭建

  1. 为什么要做自动化测试
  2. 什么项目适合做自动化测试
  3. 选择UI自动化还是接口自动化
  4. 接口自动化工具对比
  5. Jmeter+Ant+jekins框架搭建

一、为什么要做自动化测试?

假设半月迭代一次,每次迭代需要5轮测试,人工回归一次需要5个小时,最终确定一年下来,自动化为你省去600个小时,也就是75个工作日,同时也省去了测试旧功能要吐的烦恼以及人疲惫下产生的错误。

有点:提高效率、质量

自动化测试:人为驱动的测试行为转化为机器执行过程(在手工基础上)

二、什么项目适合做自动化测试?

1.什么项目适合?

需求稳定,不会频繁变更(项目稳定)

研发和测试周期长,需要频繁执行回归测试

需要在多种平台上重复运行相同测试的场景(兼容性测试)

某些测试项目通过手工测试无法实现,或手工成本太高

被测软件的开发较为规范,能够保证系统的可测试性

2.什么阶段编写自动化脚本?

项目稳定后,编写自动化用例更得心应手,原因:

项目基本没有bug,方便写断言(断言类似于手工测试里的预期结果)

手工测试时用例已编写完成,自动化测试脚本完全可以根据手工测试去实现

3.什么阶段进行自动化测试?

项目测试流程:冒烟测试-新需求测试-兼容性测试-回归测试

冒烟测试:测试流程的重要起点

  新需求测试:测试过程中学习、探索最集中的测试

  兼容性测试

  回归测试:稳定功能是否收到新功能影响的测试

回归测试和兼容性测试适合进行自动化测试,前者需要执行大量回归测试用例,后者需要重复执行

三、选择什么类型的自动化测试

自动化测试分类:

UI自动化(效率低、成本高、用户操作真实性强)

接口自动化(用户操作真实性不强)

单元测试

性能测试

UI自动化和接口自动化可以产生互补测试(采用方法)

四、接口工具对比

接口工具应满足的需求:

接口编写方便

方便调试接口

支持数据初始化

生成测试报告

支持参数化

接口测试工具对比:

Fiddler:抓包神器,http协议调试代理工具,能够记录互联网之间的http协议通信,可以设置断点,查看所有“进出”Fiddler的数据(如cookie,html,js,css等文件)

可以进行接口测试,不能断言

Postman:

能够发送任何类型的HTTP请求 (GET, HEAD, POST, PUT..),可以进行文件上传、响应验证、变量管理、环境参数管理,还可以批量管理和运行用例,并支持用例导出、导入,可以进行接口的自动化测试

缺点是自动化断言不够强大,不能和jenkins、代码管理库进行持续集成测试

soapUi:

开源测试工具,通过soap/http来检查、调用,实现Web Service的接口和性能测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。

Jmeter:

是一款100%纯Java编写的免费开源工具,主要用来做性能测试,但也可以做接口测试,配合后置处理器与断言,可以满足大部分的接口测试场景,JMeter提供了BeanShell编程能力,可以写出比较灵活的测试脚本,通过jmeter+ant+jenkins可以实现接口和性能自动化测试。

代码实现

java代码实现接口测试:java可以通过httpclient.jar包,利用JUnit或者TestNG这样的单元测试工具进行用例编写,结合jenkins实现接口持续集成测试。

python代码实现接口测试:python可以利用强大的第三方库Requests实现接口用例编写,结合unittest单元测试框架,生成测试报告,也可以和jenkins做持续集成测试。

为什么要代码实现接口测试?

工具有限制,很多测试场景工具很难模拟,场景和数据构造复杂,代码可以实现接口,统计结果展示灵活。自己写测试框架与代码。

中小型项目推荐使用postman和jmeter,对于大型项目还是利用代码实现。

五、jmeter+Ant+Jenkins框架搭建

大致思路:Jmeter可以做接口测试,也能做压力测试,而且是开源软件;Ant是基于Java的构建工具,完成脚本执行并手机结果生成报告,可以跨平台;Jekins是持续集成工具。将这三者结合起来可以搭建一套WebHTTP接口测试的持续构建环境,实现接口自动化测试,基于win

  1. 安装jmeter

    1.1下载安装包

      Jmeter依赖java运行环境,需提前下载jdk并配置环境变量

      官网下载:http://jmeter.apache.org/download_jmeter.cgi

      下载完后直接解压

    1.2配置环境变量

      JMETER_HOME为jmeter安装路径

      CLASSPATH为%JMETER_HOME%\lib;

      PATH为%JMETER_HOME%\bin;

  1.3安装验证

    命令窗口输入jmeter –v回车,能出现jmeter版本则说明成功

    可以直接在命令窗口输入jmeter回车后启动jmeter;也可以在点击jmeter.bat文件启动jmeter

    1.4在jmeter上调试通一个接口(如果是多个接口,按照jmeter方法添加即可)

  1. 安装Ant

    2.1安装包下载

      官网下载(http://ant.apache.org/bindownload.cgi),我用的1.10.1版本,下载完直接解压

    2.2配置环境变量

      ANT_HOME为ant解压位置

      CLASSPATH为%ANT_HOME%\lib;

      PATH为%ANT_HOME%\bin;

    2.3安装验证

      验证安装结果,命令行输入ant –v,出现版本信息则安装成功

  1. Ant配置Jmeter:用ant构建命令来调动执行jmeter接口测试,并生成测试报告

    3.1配置库文件

      将jmeter extras目录下的ant-jmeter-1.1.1.jar文件拷贝到ant安装目录下的lib文件夹中, 这样ant运行时才能找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"这个类,从而成功触发JMeter脚本

    3.2配置ant的编译文件build.xml

      在jmeter根目录下创建一个存放脚本和报告的文件夹testcases

      在testcases文件夹下新建build.xml文件,修改文档里的内容

    注意:jmeter的extras文件下也有个build.xml文档,不要用这个文档来改,是两回事,这里的build文档是自己新建

    代码中不能存在tab键否则会编译失败,要执行的脚本也要指定好,否则也会有问题

    按实际情况修改如下文档:

https://www.cnblogs.com/autobyme/p/8387407.html---该博客里面可以复制build.xml里的配置

3.3配置jmeter.propertise文档

在jmeter/bin目录下找到jmeter.properties文档,打开该文档编辑,修改jmeter报告输出格式为xml

改jmeter.save.saveservice.output_format=csv为jmeter.save.saveservice.output_format=xml,并去掉前面注释符号#

3.4验证配置,执行构建测试

将之前jmeter脚本保存,并将build.xml配置文件放在与测试脚本相同目录下,目录如下:

3.5执行测试

在build.xml所在目录打开命令窗口,输入ant run,执行测试

3.6查看测试报告

在报告输出存放路径下查看是否有jtl和html结果报告,存放路径在build文档中也有

打开html文档,测试结果展现执行的用例名称、成功率、用例执行时间等结果参数

这样的结果不太直观

3.7优化测试报告

(1)下载优化模板jmeter-results-shanhe-me.xsl,拷贝到jmeter的extras目录中

(2)设置测试输出报告要输出的内容:同样在jmeter.properties中,设置需要输出的内容为true,并去掉前面的注释符号#,这里全部设置成true—保存

(3)设置build文件的报告模板为优化后的模板jmeter-results-shanhe-me.xsl

(4)再次用ant构建测试,查看优化后的测试报告

  1. 安装jenkins(两种方式)

4.1下载安装包解压

https://jenkins.io/download/

1.下载msi文件(双击安装)

2.用servlet容器来部署jekins,使用的是tomcat

https://www.cnblogs.com/dreamyu/p/6480980.html

4.2启动jenkins

安装好之后,浏览器输入http:localhost:8080

从安装目录jenkins\sercrets找到initalAdminPassword文件,填写密码

选择插件的安装方式,选择按推荐方式安装

创建第一个管理员账户

或者直接跳过该步骤,使用默认的admin和administrator登录

4.3配置jenkins

1.这里需要配置invoke ant插件、HTML测试报告真实的插件

(1)在jenkins创建管理中安装HTML Publisher Plugin 和Ant in Workspace(如果在刚开始默认推荐安装插件里安装了ant,这里就不用下载ant插件)

(2)在jenkins中系统管理-系统设置中,配置jdk和Ant

2.新建并配置一个项目

注意:ant构建项目,默认执行的是Jenkins中workspace下的脚本,如果workspace下没有脚本则构建会报错,将脚本和build.xml文件都放置workspace目录下(我放在jmeter下)

注意:Index page[s]:的值(TestReport.html)是与build.xml中设置的测试报告名称一致,否则在Jenkins中查看不了测试报告

脚本配置完成

4.5项目主页,点击立即构建,执行测试

参考资料:

https://www.cnblogs.com/autobyme/p/8387407.html

https://www.cnblogs.com/wulixia/p/11011793.html

https://blog.csdn.net/XingLongSKY/article/details/91536924

原文地址:https://www.cnblogs.com/gaoxiaoru/p/11584115.html

时间: 2024-08-06 04:40:26

Jmeter+Ant+Jenkins框架搭建的相关文章

Jmeter+ant+Jenkins环境搭建

Jmeter+ant+Jenkins环境搭建 修改时间 修改内容 修改人 2019-04-19 修改 1. 环境搭建工具列表 SN 工具名称 描述 1 JDK 根据自己系统选择安装包,建议选用最新版本 2 Ant 根据自己系统选择安装包,建议选用最新版本 3 Jmeter 根据自己系统选择安装包,建议选用最新版本 4 Jenkins 根据自己系统选择安装包,建议选用最新版本 2. JDK安装 1 应用安装 双击JDK安装包,选择安装路径(为了节省C盘系统盘空间,不建议选择默认路径.本人所有相关软

接口自动化测试框架:jmeter + ant + jenkins(二)

接上一篇文章:接口自动化测试框架:jmeter + ant + jenkins(一) 三.一个及多个jmx文件多个请求报告展示 上面只有一个请求,我们看看多个请求的效果 一个jmx多个请求 在线程组下再新增一个http请求,在同一个jmx文件内,设置好新的http请求,执行成功 重新ant下,结果如下: 多个jmx多个请求:同理,这里不继续阐述了. 四.ant调用jmeter脚本(通过jenkins) 启动tomcat中的startup,按win+r键,输入startup 不要关闭,在浏览器中输

Jmeter+Ant+Jenkins搭建持续集成的接口测试

前置条件:首先我们默认Jmeter脚本已经录制好了,并测试通过,存在如下脚本 一.Ant转换xml格式的聚合报告 前期条件:存在Jmeter聚合测试报告TestReport201510100244.jtl 1.Ant安装 下载ant地址 配置环境变量 命令行窗口输入ant 安装成功 2.将Jmeter保存的xml格式的聚合报告TestReport201510100244.jtl,放到相应的文件夹中 文件夹目录结构: D:\jemeterTest 3.编辑build.xml文件          

Meter - 连续性能测试 - JMeter + ANT + Jenkins集成 - 第1部分

目标: 创建包含性能测试流程的持续交付管道, 以尽早检测任何与性能相关的问题. 通常,全面的性能测试将在分段/预生产环境中完成,该环境可能与您的生产环境相同.在完成QA功能/回归验证后,将代码推送到分段.因此,即使QA对构建进行了认证,代码也可能无法在特定负载下按预期工作,而这些负载只能在Staging环境中找到.此性能问题需要再次进行代码更改 - >构建 - > QA验证,这可能会推迟您的生产推送! 那么,我们能否将性能测试融入现有的持续开发和测试流程中,以尽早发现性能问题? 是! 我们绝对

【此处有干货~】jmeter+ant+jenkins持续集成配置及过程中问题解决思路

本人是一枚工作近三年的小测试,大学正好专业为软件测试,在工作中用到最多的是功能测试.接口测试.压力测试.偶尔会涉及到性能测试......(小白,很多观念技术跟大佬差距太大,勿喷) 在接口测试过程当中,如果后面需要回归接口,本人采用的是jmeter+ant+jenkins进行自动化构建,在构建失败的情况下,会用过邮箱提醒的方式告知: 强烈给大家推荐一本<全栈性能测试修炼宝典 JMeter实战 pdf >,里面内容很齐全,对于测试本身还是挺有帮助的. 切入正题: 环境配置分为三部分: 第一:jme

Jmeter+Ant+Jenkins 接口自动化之简单demo

之前的文章我们已经分享过了 Jmeter+Ant 的批量执行 ,并且搭建好了Jenkins部署平台,如何再将三者完美结合呢? 1.首先打开Jenkins主页面,进入"系统管理-插件管理",安装相关的插件: 2. 点击"可选插件"标签,输入关键词"ant"进行查询(我已经安装),勾选,点击"直接安装"进行安装,安装时会自动安装关联插件.(搜索及安装过程可能会慢 请耐心等待) 3.安装完成后需要做一个配置,点击"glob

JMeter+ant+jenkins自动化持续集成

一.ant安装配置 1.官网下载地址:http://ant.apache.org/bindownload.cgi 对应的操作系统选择对应的版本下载,本文以windows为列,下载后解压到本地 2.设置系统环境变量 ANT_HOME: d:\apache-ant-1.9.7 path: %ANT_HOME%\bin classpath: %ANT_HOME%\lib 设置完后在dos命令输入 ant -version后出现对应的ant版本即ok! 二.jmeter和Jenkins安装省略,请参考相

JMeter - 连续性能测试 - JMeter + ANT + Jenkins集成 - 第2部分

目标: 创建包含性能测试流程的持续交付管道,以尽早检测任何与性能相关的问题. 通常,全面的性能测试将在分段/预生产环境中完成,该环境可能与您的生产环境相同.在完成QA功能/回归验证后,将代码推送到分段.因此,即使QA对构建进行了认证,代码也可能无法在特定负载下按预期工作,而这些负载只能在Staging环境中找到.此性能问题需要再次进行代码更改 - >构建 - > QA验证,这可能会推迟您的生产推送! 那么,我们能否将性能测试融入现有的持续开发和测试流程中,以尽早发现性能问题? 是! 我们绝对可

jmeter+ant+jenkins+mac报告优化

一.在上篇博客中生成的报告有两个问题: 1.date not defined 2.Min Time和Max Time显示成了NaN 二.Jmeter+Ant报告生成原理: 在解决问题之前,让我们先弄清楚Jmeter+Ant是生成报告的原理,知道原理后我们就可以很从容的解决问题了.另外,如果后续我们想定制报告也就很容易了. 1.在Jmeter的extras目录下,官方已经为我们提供了一个现成的实例,我们只需要在该目录下执行ant命令就可以生成一个数据文件Test.jtl和一个报告Test.html