• 0
  • 0
分享
  • jmeter的web接口测试——软件测试圈
  • 恬恬圈 2021-09-26 10:27:20 字数 1656 阅读 856 收藏 0

一、安装Jmeter

二、添加HTTP接口测试

我们的所以工具都会在Jmeter工具中完成,接来就按照一般步骤来创建一个HTTP接口测试。

如上图,右键点击“测试计划”-->“添加”-->“Threads(Users)”-->“线程组”。

如上图,设置线程组,线程组主要包含三个参数:线程数、准备时长(Ramp-UpPeriod(inseconds))、循环次数。

线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。

准备时长:设置的虚拟用户数全部启动的时长。如果线程数为20,准备时长为10(秒),那么需要10秒钟启动20个线程。也就是平均每秒启动2个线程。

循环次数:每个线程发送请求的个数。如果线程数为20,循环次数为100,那么每个线程发送100次请求。总请求数为20*100=2000。如果勾选了“永远”,那么所有线程会一直发送请求,直到手动点击工具栏上的停止按钮,或者设置的线程时间结束。

因为这里要做接口测试,所以各个参数为均1。

名称:本属性用于标识一个取样器,建议使用一个有意义的名称。

注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。

服务器名称或IP:HTTP请求发送的目标服务器名称或IP地址。

端口号:目标服务器的端口号,默认值为80。

协议:向目标服务器发送HTTP请求时的协议,可以是HTTP或者是HTTPS,默认值为http。

方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。

Contentencoding:内容的编码方式,默认值为iso8859

路径:目标URL路径(不包括服务器地址和端口)

自动重定向:如果选中该选项,当发送HTTP请求后得到的响应是302/301时,JMeter自动重定向到新的页面。

UsekeepAlive:当该选项被选中时,jmeter和目标服务器之间使用Keep-Alive方式进行HTTP通信,默认选中。

Usemultipart/from-dataforHTTPPOST:当发送HTTPPOST请求时,使用Usemultipart/from-data方法发送,默认不选中。

同请求一起发送参数:在请求中发送URL参数,对于带参数的URL,jmeter提供了一个简单的对参数化的方法。用户可以将URL中所有参数设置在本表中,表中的每一行是一个参数值对(对应RUL中的名称1=值1)。

三、添加新的POST请求

POST请求的添加方式与前面GET请求一样。不过POST请求需要设置参数。

服务器名称或IP:127.0.0.1

端口号:8000

方法:POST

路径:/polls/question_vote/

同请求一起发送参数:

点击“添加”按钮,添加POST请求的参数。

名称:
qid1
cid1

执行测试:

选择菜单栏“运行”-->“清除”,或者点击工具栏清除按钮。然后重新执行启动测试。并查看结果树。

四、添加断言

对于自动化测试来说,断言必须要有的,如果没有断言我们只能人眼对比对接口返回的数据,有了断言功能,就会简化这个过程。Jmeter提供了丰富的断言方法来帮助我们完成这个工作。

如上图,右键点击HTTP请求“添加”-->“断言”-->“响应断言”。

要测试的响应字段:响应文本、Document(text)、URL样本、响应信息、ResponseHeaders、LgnoreStaus等选项。虽然接口返回的是Json格式的数据,但对于Jmeter来说返回数据为文本,所以,这里可以勾选“响应文本”

模式匹配规则:包括、匹配、Equals、Substring。这里只需要验证返回数据中是否包含主要的关键字,所以,这里勾选“包括”。

要测试的模式:其实就是断言的数据。点击“添加”按钮,输入要断言的数据。

运行测试:

再次清除测试数据,点击启动测试。


作者:相逢笑恩仇

原文链接:https://www.cnblogs.com/xiangyue298/p/7268416.html


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   随着互联网技术的飞速发展,业务的开展方式更加灵活,应用系统更加复杂,也因此面临着更多的安全性挑战。安全测试是在应用系统投产发布之前,验证应用系统的安全性并识别潜在安全缺陷的过程,目的是防范安全风险,满足保密性、完整性、可用性等要求。  日常测试过程中经常遇到开发同事来询问一些常见的配置型漏洞应该如何去修复,为了帮助开发同事快速识别并解决问题,通过总结项目的安全测试工作经验,笔者汇总、分析了应用系统的一些常见配置型漏洞并给出相应的修复建议,在这里给大家进行简单的分享。Cookie缺少HttpOnly属性漏洞描述  Cookie中的HttpOnly属性值规定了Cookie是否可以通过客户端脚本...
            1 1 4678
            分享
          • 选择题一、数量关系1、甲乙2人比赛爬楼梯,已知每层楼梯相同,速度不变,当甲到3层时,乙到2层,照这样计算,当甲到9层时,乙到( D )层A.5 B.6C.7 D.82、有一份选择题试卷共6个小题,其得分标准是:一道小题答对得8分,答错得0分,不答得2分,某位同学得了20分,则他( D )A.至多答对一道题 B.至少有三个小题没答 C.至少答对三个小题 D.答错两小题3、有只蜗牛要从一口井底爬出来。井深20尺。蜗牛每天白天向上爬3尺,晚上向下滑2尺。请问该蜗牛几天才能爬出井口? (A)A.20B.19C.18D.154、下列哪一个计算结...
            0 0 1170
            分享
          •   前言  无论什么自动化,部分测试用例均会运用到参数化,参数化可以帮助我们覆盖更多的测试用例,减少重复代码逻辑,然而自动化中也有多种实现参数化的方法,比如UnitTest的DDT模式,Pytest的fixture,以及Pytest的parametrize均可以实现测试用例的参数化。  今天小编介绍新的一种方法,通过hook函数来实现测试用例的参数化,废话不多说,直接进入正文。  pytest_generate_tests  pytest_generate_tests钩子函数是Pytest框架中用来动态生成测试用例参数的钩子函数。通过它,我们可以在运行时动态地生成测试参数,从而避免手动编写重复...
            0 0 1259
            分享
          •   没有任何征兆,华为Mate 60 Pro突然横空出世。虽然麒麟9000S、5G依然没有得到完全证实,但来自供应链的说法称,Mate 60 Pro是迄今为止国产化率最高的手机,超过了90%。  所以,Mate 60 Pro性能有多好是次要的,关键是我们完全有能力掌握一款高端智能手机的全链路。  据财联社统计,Mate 60 Pro的供应链企业已知有至少46家来自中国。可以说,Mate 60 Pro已经不只是华为的Mate 60 Pro。  结构件:  东睦股份、福蓉科技、捷荣技术、兆威机电、金龙机电、长盈精密、电连技术、安利股份、苏大维格、蓝思科技  显示模组:  联创光电、合力泰、长信科技...
            0 0 1320
            分享
          •   关于Gato  Gato是一款针对GitHub的信息枚举和渗透测试工具,该工具是一个GitHub自托管的安全测试工具。在该工具的帮助下,广大蓝队研究人员或渗透测试安全研究人员就可以轻松评估目标组织的GitHub安全性,并尝试枚举其中存在安全问题的个人访问令牌或其他安全问题。  值得一提的是,GitHub建议仅将自托管运行程序用于私有存储库,然而有成千上万的组织仍然会在公共代码库中使用自托管运行程序。因此,该工具还可以搜索并枚举使用了自托管运行程序的GitHub公共存储库。  功能介绍  1、GitHub PAT特权枚举;  2、基于API的GitHub代码搜索枚举;  3、GitHub A...
            0 0 708
            分享
      • 51testing软件测试圈微信