声明:本文所记录的仅本次操作学习到的知识点,其中商城IP错误,请自行更改。

背景:商城购物车可以添加数据,也可以删除数据。

思路

  • 登录后添加购物车,加入成功后查看购物车列表。
  • 购物车列表,随机删除,或者指定删除(需要特殊指定,例如购物车ID)。
  • 全部删除:依次读取购物车列表并删除。

1.认识JMeter

没有新增知识,巩固复习之前的知识点。

2.【HTTP请求默认值】

养成习惯。后面【登录】【加入购物车】【查看购物车列表】【购物车随机删除】【购物车所有删除】都要用到,所以提取出来只要设置一次,不需要在5个接口处修改。

3.【登录】

新增【登录】,设置【JSON断言】,设置【JSON提取器】获取token值。

4.【加入购物车】

加入购物车只有商品id跟数量两个参数,可以直接添加参数。不需要使用【消息体数据】,也就不需要再设置【HTTP信息头管理器】,当然也别忘了【JSON断言】。

5.【查看购物车列表】

新增【查看购物车列表】请求时,只需要接口参数,再无其它参数。设置【JSON断言】,设置【JSON提取器】获取购物车列表ID,随机获取购物车ID。

6.【购物车随机删除】

新增【购物车随机删除】请求时,除了删除接口参数,还需要新增购物车ID参数,指定删除获取到的随机ID。

可以先执行后查看结果树:

7.【购物车循环删除】

前端页面可以通过勾选全选,然后点击删除,实现删除购物车列表。但是后端接口实现是通过获取到前端勾选的所有购物车ID,然后再依次删除,最后给前端返回执行成功。

(1)获取全部购物车ID

【购物车随机删除】后,可以新增【查看购物车列表】,获取到剩余的全部购物车ID。

(2)依次删除购物车ID

  获取全部购物车ID后,可以通过【调试取样器】依次打印出全部购物车,然后再通过【循环控制器】依次删除。

  【调试取样器】依次打印出的所有购物车id是:

  变量名_序号 = 值

  变量名_matchNr = 总数

  又到了熟悉的环节:先设置【循环控制器】控制删除的次数,再设置【计数器】保存变量名后面的序号,最后设置【购物车循环删除】请求时,参数设置需要先通过 __V() 函数来拼接,再通过 ${} 方法获取到参数值。

(3)全部删除后查询

8.【查看结果树】

执行后【查看结果树】最后查看所有流程执行结果。

第十节 JMeter基础-初级购物车【接口关联-鉴权】的更多相关文章

  1. jmeter测试wordpress使用base64进行鉴权

    1.下载插件 对密码进行加密 2.安装插件 3.使用插件 4.使用base64对上面获取到的密码进行二次加密 echo -n "用户:密码" | base64 将以上命令键入lin ...

  2. 接口的鉴权&响应数据解密

    前言: 1.开放的接口为了避免被别人攻击,频繁刷接口,浪费服务器资源,这就涉及到签名(Signature)加密了 2.API 使用签名方法(Signature)对接口进行鉴权(Authenticati ...

  3. YAPI接口自动鉴权功能部署详解

    安装准备 以下操作,默认要求自己部署过yapi,最好是部署过yapi二次开发环境. 无论是选择在线安装或者是本地安装,都需要安装client工具. 1.yapi-cli:npm install yap ...

  4. Spring Security 接口认证鉴权入门实践指南

    目录 前言 SpringBoot 示例 SpringBoot pom.xml SpringBoot application.yml SpringBoot IndexController SpringB ...

  5. 接口的鉴权cookie、session和token

    1.HTTP是无状态协议 什么是无状态?就是说这一次的请求和上一次的请求是没有任何关系的,无法共享信息.好处就是速度快. 2.cookie.session的加入 HTTP请求是无状态的,所以解决共享信 ...

  6. EasyNVR摄像机网页H5全平台无插件直播流媒体播放服务二次开发之接口鉴权示例讲解

    背景需求 EasyNVR的使用者应该都清楚的了解到,EasyNVR一个强大的功能就是可以进行全平台的无插件直播.主要原因在于rtsp协议的视频流(默认是需要插件才可以播放的)经由EasyNVR处理可以 ...

  7. 接口鉴权之sign签名校验与JWT验证

    需求描述: 项目里的几个Webapi接口需要进行鉴权,同接口可被小程序或网页调用,小程序里没有用户登录的概念,网页里有用户登录的概念,对于调用方来源是小程序的情况下进行放权,其他情况下需要有身份验证. ...

  8. 风炫安全web安全学习第三十节课 命令执行&代码执行基础

    风炫安全web安全学习第三十节课 命令执行&代码执行基础 代码执行&命令执行 RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统. 远程系统命令执行 ...

  9. 『动善时』JMeter基础 — 36、JMeter接口关联【正则表达式提取器】

    目录 1.正则表达式提取器介绍 2.正则表达式提取器界面详解 3.正则表达式提取器的使用 (1)测试计划内包含的元件 (2)请求一界面内容 (3)正则表达式提取器界面内容 (4)请求二界面内容 (5) ...

  10. 如何一步一步用DDD设计一个电商网站(十)—— 一个完整的购物车

     阅读目录 前言 回顾 梳理 实现 结语 一.前言 之前的文章中已经涉及到了购买商品加入购物车,购物车内购物项的金额计算等功能.本篇准备把剩下的购物车的基本概念一次处理完. 二.回顾 在动手之前我对之 ...

随机推荐

  1. 我对IdentityServer4的初步了解

    官网:https://identityserver4.readthedocs.io/en/latest/quickstarts/2_interactive_aspnetcore.html 官网例子:h ...

  2. Django——基于forms组件和ajax的注册功能

    path('register/',views.register) #注册的form表单 from django import forms from django.forms import widget ...

  3. Newtonsoft.Json解决中文编码问题

    Newtonsoft.Json解决中文编码 默认Newtonsoft.Json序列化对象后,返回的中文未进行编码. 需要将编码转换的话,需要 1 2 3 4 5 6 7 var json = Json ...

  4. ElasticSearch性能原理拆解

    逐层拆分ElasticSearch的概念 Cluster:集群,Es是一个可以横向扩展的检索引擎(部分时候当作存储数据库使用),一个Es集群由一个唯一的名字标识,默认为"elasticsea ...

  5. LeetCode 208. Implement Trie (Prefix Tree) 实现 Trie (前缀树)(C++/Java)

    题目: Implement a trie with insert, search, and startsWith methods. Example: Trie trie = new Trie(); t ...

  6. vue2 混入 (mixin) 带来的小惊喜

    最近在review自己写的代码时发现,在很多的地方都用了以下的代码块 1 async initCode() { 2 const resSource = await this.$API.syscode. ...

  7. AWS Ubuntu22.04安装Mysql及配置远程连接、SCP上传文件

    一.升级apt资源包 sudo apt update 二.安装MySQL sudo apt install mysql-server 三.启动MySQL服务 sudo service mysql st ...

  8. 订单号规则,不能重复。redis去重 redis集合set应用

    订单号规则,不能重复.redis去重 redis集合set应用 redis锁定商品解决并发售卖问题 RedisUtil工具类https://www.cnblogs.com/oktokeep/p/179 ...

  9. Docker镜像下载慢/失败?Linux代理使用不便?想在无Docker环境下载镜像?试试我这款开源项目吧

    我要在这里放一段代码块 // 这是一段防爬代码块,我不介意被文章被爬取,但请注明出处 console.log("作者官网:https://www.hanzhe.site"); co ...

  10. lovelive - μ's

    Tips:当你看到这个提示的时候,说明当前的文章是由原emlog博客系统搬迁至此的,文章发布时间已过于久远,编排和内容不一定完整,还请谅解` lovelive - μ's 日期:2017-12-16 ...