在前面的知识体系中介绍了Jmeter的基本应用,下来通过具体的案例来看Jmeter在接口测试中的具体案例实战部分。

HTTP是基于应用层的协议,底层的网络传输层它不需要去关心,同时它是一个无状态的协议,它的请求流程具体可以总结为:

1、客户端连接服务端建立TCP的连接;

2、客户端发送(Request)请求到服务端;

3、服务端响应( Response)回复给客户端;

4、客户端与服务端之间关闭TCP的连接。

HTTP在版本1.0以及现在使用的1.1中,它默认是持久连接,也就是Connection对应的Value值是:keep-alive,再通俗的说任意一端没有明确断开连接,保持TCP的连接。但是HTTP毕竟是一个无状态的协议,也就导致了cookie技术的发展,而Cookie是客户端的浏览器存储键值对的一些内容,首次客户端访问服务端的时候,服务端会把内容写入到客户端中,客户端下次访问的时候会带着键值对的内容发送到服务端,但是Cookie它是客户端的机制,敏感信息存储在客户端是很不合理的,也就有了Session,客户端发送请求到服务端,服务端会把信息保存在内存中,客户端下次请求的时候带上SessionID的信息来保持会话的连接。比如登录博客园登录后,想查看博客园的粉丝信息,必须是保持在登录的状态,并且是客户端得明确的告诉服务端是查看那个用户的博客园的粉丝,如果客户端请求的时候不带SessionID的信息,服务端会直接拒绝客户端的请求并且跳转到登录的页面。

通过Charles工具来查看博客园粉丝的请求信息,见截图:

再看服务端返回的响应内容数据:

下面使用Jmeter来实现该接口,查看我的粉丝,见Jmeter的截图

执行后,见执行的结果:

跳转到登录的页面,并没有跳转到我的粉丝的页面,这是因为客户端在发送请求的时候并没有在请求头中带Cookie,所以服务端认为是无登录,跳转到登录的页面, 下来处理这部分,在客户端发送请求的时候,在请求头中带上Cookie,见带上后的截图:

再次执行,就返回我的粉丝的响应数据,见截图:

Jmeter4.0接口测试之案例实战(七)的更多相关文章

  1. Jmeter4.0接口测试之断言实战(六)

    在接口测试用例中得有断言,没有断言的接口用例是无效的,一个接口的断言有三个层面,一个是HTTP状态码的断言,另外一个是业务状态码的断言,最后是某一接口请求后服务端响应数据的断言.在Jmeter中增加断 ...

  2. Jmeter接口测试之案例实战(十一)

    在前面的知识体系中详细的介绍了Jmeter测试工具在接口自动化测试中的基础知识,那么今天更新的文章主要是对昨晚的上课内容做个总结. 首先来看Jmeter测试工具在图片上传中的案例应用.首先结合互联网产 ...

  3. Jmeter接口测试之案例实战

    Jmeter是apacheg公司基于Java开发的一款开源的压力测试工具,安装Jmeter之前先安装Jdk,具体JDK安装和环境变量配置自行百度.这里不概述. 1.添加线程组 测试计划->添加- ...

  4. Jmeter4.0接口测试之WebServices(四)

    关于什么是web services,可以到W3C中查看详细的信息,本文章主要介绍使用Jmeter怎么来做web services的接口测试,首先它也是基于HTTP协议的,我们实现电话号码归属地的查询, ...

  5. SoapUI接口测试之实战运用操作(五)

    SoapUI接口测试之实战运用操作(五)

  6. jmeter4.0测试dubbo接口遇到的问题:An error occurred: org.springframework.scheduling.quartz.CronTriggerBean has interface org.quartz.CronTrigger as super class

    半年前,用jmeter4.0测试dubbo接口的时候,遇到这样一个问题 An error occurred: org.springframework.scheduling.quartz.CronTri ...

  7. 【JMeter4.0学习(七)】之配置元素

    目录 CSV Data Set Config HTTP Cookie管理器 HTTP信息头管理器 JDBC Connection Configuration 用户定义的变量 计数器 一.CSV Dat ...

  8. (升级版)Spark从入门到精通(Scala编程、案例实战、高级特性、Spark内核源码剖析、Hadoop高端)

    本课程主要讲解目前大数据领域最热门.最火爆.最有前景的技术——Spark.在本课程中,会从浅入深,基于大量案例实战,深度剖析和讲解Spark,并且会包含完全从企业真实复杂业务需求中抽取出的案例实战.课 ...

  9. 《图解Spark:核心技术与案例实战》作者经验谈

    1,看您有维护博客,还利用业余时间著书,在技术输出.自我提升以及本职工作的时间利用上您有没有什么心得和大家分享?(也可以包含一些您写书的小故事.)回答:在工作之余能够写博客.著书主要对技术的坚持和热爱 ...

随机推荐

  1. js数据类型大全

    声明变量的命名规范(标识符) 1.不能以数字开头,只能以字母或者¥或者_开头 2.js变量名称区分大小写 3.变量名不能含有关键字(this.if.for.while) 4.驼峰命名法 console ...

  2. pip3 install mysqlclient安装失败

    报错信息: OSError: mysql_config not found 解决方法: 执行以下命令 yum install python-devel mysql-devel -y 然后再 pip3 ...

  3. JavaScript,ajax与springboot之间的传参方式

    Springboot:@PostMapping("/mDelTest")public String mDelTest (@RequestBody List<String> ...

  4. 必备技能六、Vue框架引入JS库的正确姿势

    在Vue.js应用中,可能需要引入Lodash,Moment,Axios,Async等非常好用的JavaScript库.当项目变得复杂庞大,通常会将代码进行模块化拆分.可能还需要跑在不同的环境下,比如 ...

  5. javascript中this指向的问题

    javascript中this只有函数执行时候才能确定到底指向谁,实际this最终指向是那个调用它的对象. 1,匿名函数中的this——window function foo(){ var lastN ...

  6. 04 namenode和datanode

    namenode元数据管理 1.什么是元数据? hdfs的目录结构及每一个文件的块信息(块的id,块的副本数量,块的存放位置<datanode>) 2.元数据由谁负责管理? namenod ...

  7. idea最下方视图中没有spring框解决方法

    之前遇到过idea打开一个项目后,如图所示的spring视图框消失不见了. 并且view-Tool windows里面也找不到的问题;因为没有这个的话还挺烦的,网上搜了好久都没有资料,所以记录一下; ...

  8. 修改webserver站点用户组权限

    例如webserver站点目录为webtest 搭建nginxwebserver服务器的时候,默认的用户和用户组权限为nginx:nginx, 即nginx.conf 和php-frm.conf 中默 ...

  9. Web实验一 国内旅游界面

    Web实验一  旅游界面的设计 一.首页代码 <!DOCTYPE html> <html lang="zh-cn"> <head> <me ...

  10. CSS--transform相关属性实现2d到3d的具体变化

    先放上一段我写的相关代码(可能有一定冗杂代码,请见谅) <!DOCTYPE html> <html lang="en"> <head>      ...