测试常用工具wireshark、postman、JMeter基础了解

本文介绍了测试常用的三个工具——Wireshark、Postman和JMeter的基础知识。Wireshark用于网络封包分析,Postman则是一个接口测试工具,允许设置请求URL、方法、头和参数。在Postman中,可以通过不同方式发送请求,如form-data、raw和binary。JMeter用于性能测试,包括添加线程组、Http请求、查看结果树和聚合报告等步骤,重点关注响应时间和错误率。

1.Wireshark

安装完成后,打开Wireshark,选择一个要监听的网络后,出现如下页面。
在这里插入图片描述
协议颜色标识定位在菜单栏View --> Coloring Rules,可自行更改。
在这里插入图片描述
第一栏为过滤栏,由于抓包信息过多,自己往往只需要抓取特定的某一个,所以设置了过滤器,可以看作是一个关键字筛选
第二栏是一些基础信息。Source(源头地址)、Destination(目标地址)、Protocol(协议)、Length(字节长度)、Info(信息)
在这里插入图片描述
分别代表含义:
(1)Frame: 物理层的数据帧概况
(2)Ethernet II: 数据链路层以太网帧头部信息
(3)Internet Protocol Version 4: 互联网层IP包头部信息
(4)Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
(5)Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议。Wireshark参考
在这里插入图片描述

在这里插入图片描述
如上图,为过滤器的使用方法,可利用过滤器,筛选符合条件的包。

2.postman

下载地址:https://www.postman.com/downloads/

一个接口请求需要设置:请求URL,请求方法,请求头,请求参数。同样的,在postman中,我们也只需要设置这四项即可完成一次请求。下图为整体页面,左侧为项目文件的宏观管理,右侧可以创建请求。
在这里插入图片描述
如下图部分,GET为请求方式,右侧填入URL(GET请求的参数在URL链接上,所以,GET请求的请求头与请求参数如在接口文档中无特别声明时,可以不填。)
在这里插入图片描述

2.1 Request Body

在这里插入图片描述

  1. form-data 是网页表单用来传输数据的默认格式。可以模拟填写表单,并且提交表单。可以上传一个文件作为key的value提交(如上传文件)。但该文件不会作为历史保存,只能在每次需要发送请求的时候,重新添加文件。
  2. form-urlencoded 不能上传文件。该模式和表单模式会容易混淆。urlencoded中的key-value会写入URL,form-data模式的key-value是直接提交。
    3)raw request 可以包含任何东西。所有填写的text都会随着请求发送。但需要注意更改上传的格式。在这里插入图片描述
    4)binary 可传图片,音视频,text文件等。

2.2 Responses

保证API响应的正确性,就是你需要做的大部分工作。postman的response viewer部分会协助你完成该工作且使其变得简单。一个API的响应包含body,headers,响应状态码。postman将body和headers放在不同的tabs中。响应码和响应时间显示在tabs的旁边。将鼠标悬停在响应码上面可以查看更详细的信息
在这里插入图片描述
如上图,共三种方式来查看Responses的响应体。

Authentication:鉴权,可以理解为身份验证。

1 Basic Auth:填写用户名和密码,点击Refresh headers
2 Digest Auth:要比Basic Auth复杂的多。使用当前填写的值生成authorization header。所以在生成header之前要确保设置的正确性。如果当前的header已经存在,postman会移除之前的header。
3 OAuth 1.0a:postman的OAuth helper让你签署支持OAuth 1.0基于身份验证的请求。OAuth不用获取access token,你需要去API提供者获取的。OAuth 1.0可以在header或者查询参数中设置value。
4 OAuth 2.0:postman支持获得OAuth 2.0 token并添加到requests中。

2.3 Write Test

在这里插入图片描述
本质上是javascript code,可以为tests object设置values。这里使用描述性文字作为key,检验body中的各种情况,当然你可以创建任意多的key,这取决于你需要测试多少点。 tests也会随着request保存到collection中。api测试保证前端后台都能正常的于api协作工作,而不用在出错时猜测是哪里的问题。 需要在request的test中创建了test后,再进行request,test的结果在body的test中查看。 注意:

  1. 这里的key描述必须是唯一的,否则相同描述只会执行第一个。
  2. 这里的key可以使用中文。 例子: tests[“Body contains user_id”] = responseBody.has(“user_id”)

这里描述性的key为:Body contains user_id。检测点为:responseBody.has(“user_id”),意思是检测返回的body中是否包含”user_id”这个字段。查看responses中的Tests结果:记过显示每个key,也就是我们测试点的具体结果,是否通过。具体用例可参考其中第四部分

3 JMeter

大体步骤为:
添加线程组–配置线程–添加Http请求–添加查看结果数–添加断言、断言结果–添加聚合报告–执行–分析报告

参考步骤
聚合报告参数详解:

  1. Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
  2. #Samples:请求数——表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100
  3. Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,以Transaction 为单位显示平均响应时间
  4. Median:中位数,也就是 50% 用户的响应时间
  5. 90% Line:90% 用户的响应时间
  6. Min:最小响应时间
  7. Max:最大响应时间
  8. Error%:错误率——错误请求数/请求总数
  9. Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
  10. KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec

一般而言,性能测试中我们需要重点关注的数据有: #Samples 请求数,Average 平均响应时间,Min 最小响应时间,Max 最大响应时间,Error% 错误率及Throughput 吞吐量。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值