一、环境准备

1.Jdk1.7或以上:

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2.Jmeter 3.1:

下载址址:http://jmeter.apache.org/download_jmeter.cgi

二、项目创建

1.解压Jmeter后,双击bin目录下的jmeter.bat文件,启动Jmeter。

2.保存测试计划,根据自己需求保存测试计划,名字可以自定义

三、创建线程组

1.选择"测试计划"右击添加 "Threads(Users)"->线程组,添加测试场景设置组件,接口测试中线程数设置为1,因为我们是对接口进行功能测试,所以这里设置1即可,其他的选择项目可以根据实际项目情况设置。

四、配置Header

1.在做功能测试之前,产品会提交给测试组页面原型或者需求,但是在接口测试之前开发组会提供接口文档,我们需要根据接口文档来设置。

2.根据接口测试文档配置HTTP信息头。

3.右击【线程组】-【添加】-【配置元件】-【HTTP信息头管理器】,配置信息头管理期中配置。

五、配置HTTP请求

1.右击【线程组】-【添加】-【Sampler】-【HTTP请求】,添加HTTP请求;

2.在HTTP请求中,录入接口的详细信息,需要把接口文档中的请求URL按请求方法、服务器地址、端口、请求路径,请求参数进行拆分,然后填写在HTTP请求中;

六、配置断言

1.首先我们要了解为什么添加断言,其实断言就是判断期望结果是否和实际结果匹配;

2.右击【线程组】-【添加】-【断言】-【响应断言】,判断返回值是否是预期的结果;

3.设置断言信息

4.参数解释:

Apply to:是应用范围,设定匹配的范围

(1).Main sample and sub-samples:匹配范围为当前父取样器,及子取样器

(2).Main sample only :仅当前父取样器

(3).Sub samples only:仅子取样器

(4).JMeter Variable:变量值进行匹配

要测试的响应文字:针对响应数据不同部分进行匹配

(1).响应文本:响应服务器返回的文本内容,http协议排除header部分

(2).响应代码:匹配响应代码,比如http请求中"200"代表成功

(3).响应信息:匹配响应信息,处理成功返回"成功"或者"ok"字样

(4).Response Header:匹配响应头中的信息

匹配规则:

(1).包括:响应内容包括需要匹配的内容就算成功

(2).匹配:响应内容要完全匹配匹配内容,不区分大小写

(3).equals:完全相等,区分大小写

(4).substring:响应内容包括匹配内容即为成功。

七、测试结果

1.此时我们把接口测试的完整过程配置完成,下来我们需要运行测试,重要的是我们需要关心结果是否正确。

2.添加结果集,右击【线程组】-【添加】-【监听器】-【察看结果树】,察看结果树会显示所有case的执行结果。

3.点击工具栏绿色的三角启动按钮,执行完毕后单击”察看结果树”,单击对应的HTTP请求,在【察看结果树】中查看响应结果。

Jmeter实现接口自动化测试的更多相关文章

  1. 基于Jmeter的接口自动化测试实践

    在去年实施了一年的三端(PC.无线M站.无线APP[Android.IOS])后,今年7月份开始,我们开始进行接口自动化的实施,目前已完成了整个框架的搭建以及接口的持续测试集成.今天做个简单的分享. ...

  2. ant +jmeter+jenkins接口自动化测试二

    [Jmeter篇]Jmeter+Ant+Jenkins接口自动化测试集成之半路逆转(二) 橙子探索测试发表于橙子探索测试订阅 72 [Jmeter篇]jmeter+Ant+Jenkins接口自动化测试 ...

  3. ant+jmeter+jenkins接口自动化测试一

    [Jmeter篇]jmeter+Ant+Jenkins接口自动化测试集成(一) 橙子探索测试发表于橙子探索测试订阅 90 一.简介 1.什么是ant? ant是构建工具,把代码从某个地方拿来,编译,再 ...

  4. 使用Jmeter执行接口自动化测试-如何初始化清空旧数据

    需求分析: 每次执行完自动化测试,我们不会执行删除接口把数据删除,而需要留着手工测试,此时会导致下次执行测试有旧数据 我们手工可能也会新增数据,导致下次执行自动化测试有旧数据 下面介绍两种清空数据的方 ...

  5. Jenkins+ant+jmeter搭建接口自动化测试环境

    一.jmeter 1.下载jdk并安装配置 2.下载jmeter,并解包 下载地址:http://jmeter.apache.org/download_jmeter.cgi 二.ant 1.下载解包并 ...

  6. 【三】Jmeter接口自动化测试系列之Http接口自动化实战

    作者:大虫 本文介绍 Jmeter 工具的 http 接口 自动化测试 实战! 为了通用性,就拿知乎 网站作为实战例子吧! 必备技能:http接口基础知识.抓包,本文不做详细介绍,不会的可以先百度恶补 ...

  7. 基于jmeter+ant实现的接口自动化测试

    jmeter+ANT接口自动化测试框架 项目说明 本框架是一套基于jmeter+Ant+Excel+Python而设计的数据驱动接口自动化测试框架,jmeter 作为执行器,Ant 作为构建工具,进行 ...

  8. 性能测试学习之路 (四)jmeter 脚本开发实战(JDBC &JMS &接口脚本 & 轻量级接口自动化测试框架)

    1.业务级脚本开发 登录脚本->思路:在线程组下新建两个HTTP请求,一个是完成访问登录页,一个是完成登录的数据提交.   步骤如下: 1) 访问登录页 2) 提交登录数据的HTTP PS:对于 ...

  9. Jmeter+Ant+Jenkins接口自动化测试(二)_测试方案设计及jmeter脚本开发

    前言 根据之前部署好的测试环境,进行接口自动化测试的方案设计及Jmeter脚本开发.测试方案设计过程中采用了数据分离和对象分离等思路,因此直接通过特定的测试用例文档来驱动整个自动化接口测试的执行,相关 ...

随机推荐

  1. <codis><jodis>

    Overview For codis and jodis. Codis TBD... Jodis Java client for codis. Jodis is a java client for c ...

  2. <Spark><Programming><RDDs>

    Introduction to Core Spark Concepts driver program: 在集群上启动一系列的并行操作 包含应用的main函数,定义集群上的分布式数据集,操作数据集 通过 ...

  3. L2-002. 链表去重(数组模拟)

    L2-002. 链表去重 因为数值比较小,所以直接用数组来模拟 #include<cstdio> #include<cstring> #include<iostream& ...

  4. 路径问题 :<c:url >的作用

    最近的项目一直报这样的错 可是本地启动 又没问题,xshell查看日志 没有错误日志,找了好久都没想到错误原因.一位大佬几分钟就找到原因了有点扎心. 首先说一下解决问题的思路.首先报错是4开头,说明是 ...

  5. 获取Map的key和value的两种方法

    //使用迭代器,获取key; /*Iterator<String> iter = map.keySet().iterator(); while(iter.hasNext()){ Strin ...

  6. 【tomcat】启动报错:Failed to initialize end point associated with ProtocolHandler ["http-apr-8080"] java.lang.Exception: Socket bind failed 和java.net.BindException: Address already in use: JVM_Bind错误解决

    背景:[新手] 将开发机子上的Tomcat连同其中的项目,一起拷贝到服务器上,启动tomcat的start.bat,然后报错如下: 问题1: Failed to initialize end poin ...

  7. Gym.102006:Syrian Collegiate Programming Contest(寒假自训第11场)

    学习了“叙利亚”这个单词:比较温和的一场:几何的板子eps太小了,坑了几发. A .Hello SCPC 2018! 题意:给定一个排列,问它是否满足,前面4个是有序的,而且前面4个比后面的都小. 思 ...

  8. 改变html元素

  9. 《DSP using MATLAB》Problem 5.30

    代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...

  10. HTML中嵌套的子frame如何访问父页面中的函数?

    我解决的办法,在父页面写了个函数,然后在frame页面调用父页面的函数,具体代码如下: 父:function a(){} 子frame:window.parent.a(); 问题迎刃而解 https: ...