本文介绍JMeter如何做web service测试,一般来说web服务,一般指的是HTTP请求相关的内容。这里就介绍一下如何利用JMeter做基于HTTP的web接口测试。接口也叫API(Application Programming Interface),很多我们使用的各种APP,上面的内容显示大部分都调用后台web服务器的接口,有些是网站的接口,有些是solr的接口。

什么是接口?

我们这里举例一个生活中场景来帮助你理解接口。加入你去餐馆点餐,看了菜单,告诉服务员,你要一个宫爆鸡丁,过一会,服务员就端上宫爆鸡丁给你就餐。这个场景,有三个对象,你、服务员,宫爆鸡丁,具体关系是,你点了宫爆鸡丁,服务员拿着你点的菜,告诉后厨去做这个菜,一段时间,后厨做好了,服务员给你端上宫爆鸡丁这个菜。再精简一点就是,你告诉服务员,你要宫爆鸡丁,服务员一会就给你上宫爆鸡丁。服务员在这个过程,就是一个接口的作用,你发送了一个点菜的请求,服务员给你上宫爆鸡丁就是一个请求的响应。

这样的事情,在软件中就这样叫法:你点菜是向服务员发送了一个请求,具体的菜名就是传入的参数;服务员给你上菜,就表示已经对你的请求做了响应,响应的内容是,宫爆鸡丁。再举例一个实际应用,我们手机桌面一般有一个天气预报,你设置了地区,就给你显示这个地区的天气预报。这个过程的大致原理是,手机厂商或者天气预报这个软件,在一些能提供天气服务的机构,申请了或者干脆花了钱,软件里面调了人家商业结构的提供的天气的API。具体天气的数据都来自这些提供天气服务的商业机构。今天我们就来测试一个关于天气的接口。

接口测试,大致流程是: 拿到一个接口文档,分析好请求方式是什么,主要有POST和GET方法,请求URL是什么,请求需要传入几个参数,参数的值是多少,检查请求响应的代码是什么,响应的内容有没有接口文档里描述的返回参数。接口测试可以手工做,也可以自动化做,自动化做的难点就是如何去对响应列表进行断言。

天气接口服务准备工作

为了写这篇文章,花了很多时间,在网上找免费的天气API,基本上找到了国内的新浪天气和国外的一个网站。国外的网站,我没有找到北京这个地区的代码,所以通过API获取不到北京的天气信息,这里就不讲国外的。

1. 打开新浪天气网站:http://php.weather.sina.com.cn/

2. 在试试输入框搜北京,点击搜索按钮,记住当前URL是:http://php.weather.sina.com.cn/search.php?city=%B1%B1%BE%A9&dpc=1

需要记住的是city=%B1%B1%BE%A9

其实这个看起来像乱码的字段就是北京的转义显示的一种形式,URI协议的知识,知道就可以。上海就变成和上面类似的乱码字段,但是肯定不同。

3. 来看看这个借口请求地址

http://php.weather.sina.com.cn/xml.php?city=%B1%B1%BE%A9&password=DJOYnieT8234jlsK&day=0

解释拆分(对照JMeter http 请求界面):

domain: php.weather.sina.com.cn

path: /xml.php

参数一共有三个,分别是城市,密码和天,密码是固定不变的,day=0代表当天,day=1代表明天,以此类推:

参数1:  key:city                   value:%B1%B1%BE%A9

参数2:  key:password         value:DJOYnieT8234jlsK

参数3:  kye:day                   value:0

了解了这些之后,我们来看看如何用JMeter来实现这个北京天气查询的接口测试。

1)打开JMeter UI界面

2)新建一个Thread Group

3)新建一个Sampler,选择HTTP Request

4)新建一个Lisenter,选择View Result Tree

5 ) HTTP Request界面设置如下图

6) 点击运行测试

7) 查看结果

-点击View Results Tree,查看结果,发现乱码

-把text改成document,再次看看

你还可以去Sampler result这个tab里面查看响应状态码是不是200

好了,如何用JMeter做接口测试就介绍到这里。
---------------------

怎样用JMeter做接口测试?的更多相关文章

  1. jmeter做接口测试

    jmeter做接口测试有两种方式: 1. 2.

  2. 如何用Jmeter做接口测试

    Jmeter介绍&测试准备: Jmeter介绍:Jmeter是软件行业里面比较常用的接口.性能测试工具,下面介绍下如何用Jmeter做接口测试以及如何用它连接MySQL数据库. 前期准备:测试 ...

  3. 使用jmeter做接口测试----柠檬不萌!

    一.乱码解决方案 1.jmeter查看结果树乱码 (1)在jmeter的bin目录下找到jmeter.properties这个文件,添加上 sampleresult.default.encoding= ...

  4. 使用Jmeter做接口测试(学生信息的6个接口)

    使用Jmeter做接口测试,案例中涉及到接口有:获取学生信息.登录.添加学生信息.学生金币充值.获取所有学生信息.文件上传. 一.获取学生信息(get请求) 服务器名称或IP:输入被请求服务器的名称或 ...

  5. 利用Jmeter做接口测试

    本文作者:大道测试团队-孙云 1.在安装jmeter之前先配置好JDK,再配置jmeter环境变量. 2.启动jmeter 启动jmeter: 双击Jmeter解压路径(apache-jmeter-3 ...

  6. 转:Linux下用Jmeter做接口测试

    本地设计 首先在本地设计 Apache JMeter 测试计划,大家可以参考<接口测试之 JMeter 初探> ,这里不再重复. 服务器配置 确保服务器已经安装了JDK和Python. 在 ...

  7. 使用jmeter做接口测试

    1.启动jmeter. 我们可以找到Jmeter/bin 目录下的jmeter-server这个脚本,运行即可. 在下图打开的Jmeter 页面中,右键“测试计划” -> “添加” -> ...

  8. 利用Jmeter做接口测试的时候,如何提取头部的JSESSIONID然后传递到下一个请求,继续完成当前用户的请求。

    其实,关于这个问题有三种种解决方法: 1)从响应数据里面提取JSESSIONID,点击链接可以查看https://www.cnblogs.com/liulinghua90/p/5320290.html ...

  9. 如何使用jmeter做接口测试

    1.传参:key=value形式 2.传参:json格式 3.jmeter上传文件 4.jmeter传cookie 或者使用 HTTP Cookie管理器

随机推荐

  1. Boost1.6x+win7+VC2015编译

    下载 通过boost官方网站, 或直接在source forge下载boost_1_6x_0. 可选包 Zlib library, 环境变量: ZLIB_SOURCE bzip2, 环境变量: BZI ...

  2. 针对谷歌默认最小字体12px的正确解决方案

    利用css3的缩放,其最终大小就是:12px * 0.9(缩放比例) = 10.8px; 居然行得通.但回头一想,这么写的话,IE7 IE8会不会不兼容,还是12px呢?不出所料,果然不兼容.此时,又 ...

  3. 外文翻译 《How we decide》 Introduction

    书籍PDF版地址:How we decide 本文为书籍导言部分的拙劣翻译. 当我驾驶着波音737驶向东京成田国际机场时,飞机的引擎突然起火了.此时我们正处于7000英尺的高空,机场的跑道就在不远的前 ...

  4. Spring注解驱动开发之声明式事务

    前言:现今SpringBoot.SpringCloud技术非常火热,作为Spring之上的框架,他们大量使用到了Spring的一些底层注解.原理,比如@Conditional.@Import.@Ena ...

  5. LN : leetcode 70 Climbing Stairs

    lc 70 Climbing Stairs 70 Climbing Stairs You are climbing a stair case. It takes n steps to reach to ...

  6. 学习笔记 第十一章 CSS3布局基础

    第11章   CSS3布局基础 [学习重点] 了解CSS2盒模型. 设计边框样式. 设计边界样式. 设计补白样式. 了解CSS3盒模型. 11.1  CSS盒模型基础 页面中所有元素基本显示形态为方形 ...

  7. 在Windows7下编译调试C#程序

    要在 命令行下编译C#代码,要配置一下 1.在环境变量下新建一个变量 参数名: csc 参数值:C:\Windows\Microsoft.NET\Framework\v4.0.30319 2.在系统变 ...

  8. 用RecyclerView做一个小清新的Gallery效果

    一.简介 RecyclerView现在已经是越来越强大,且不说已经被大家用到滚瓜烂熟的代替ListView的基础功能,现在RecyclerView还可以取代ViewPager实现Banner效果,当然 ...

  9. 了解java内存回收机制-博客导读

    此文作为读优质博客前的导读文 1.如何判断对象是否该回收 该对象是否被引用,是否处于不可达状态 2.对象的引用机制 强引用.软引用.弱引用.虚引用 3.垃圾回收机制如何回收.算法. 串行回收.并行回收 ...

  10. git创建分支及日常使用

    克隆代码 git clone https://github.com/master-dev.git 查看所有分支 git branch --all # 默认只有master分支,所以会看到如下两个分支 ...