news 2026/5/1 14:41:10

【软件测试】7_性能测试实战 _编写测试脚本

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【软件测试】7_性能测试实战 _编写测试脚本

文章目录

  • 一、性能测试脚本编写
    • 1.1 常用的Jmeter元件
    • 1.2 编写脚本-http请求默认值
  • 二、实现测试用例
    • 2.1 注册接口
      • 2.1.1 注意1
      • 2.1.2 接口信息
    • 2.2 登录接口
    • 2.3 进入首页
    • 2.4 搜索商品
    • 2.5 获取商品信息
    • 2.6 添加购物车
    • 2.7 查看购物车
    • 2.8 商品结算
    • 2.9 提交订单
    • 2.10 查看我的订单
  • 三、实现业务场景测试用例
    • 3.1 下单业务场景

一、性能测试脚本编写

使用JMeter编写测试脚本并调试

1.1 常用的Jmeter元件

  1. 取样器-HTTP请求
  2. 配置元件-HTTP请求默认值
  3. 配置元件-用户定义的变量
  4. 后置处理器-JSON提取器
  5. 断言-响应断言
  6. 断言-JSON断言
  7. 监听器-察看结果树
  8. 监听器-聚合报告

1.2 编写脚本-http请求默认值

位置:测试计划-配置元件-http请求默认值

作用:测试计划中的所有请求,均可以共用http请求默认值设置的内容(请求方法,URL,端口号)

二、实现测试用例

根据编写的测试用例文档, 使用JMeter实现测试用例

1、登录

2、进入首页

3、搜索商品

4、获取商品信息

5、添加购物车

6、查看购物车

7、商品结算

8、提交订单

9、查看我的订单

2.1 注册接口

2.1.1 注意1

1、项目在开发的时候,后台接口端口用的8080,而前端访问的时候把8080改为8082和8081。

2、用jmeter测试要绕过前端界面,访问后台。

3、发送注册请求前,要先获取验证码请求(方法、URL、请求体数据从F12获取)

4、实现注册接口时,保证用户唯一,手机号 与获取验证码的手机号保持一致

2.1.2 接口信息

  • 请求网址: http://www.litemall360.com:8080/wx/auth/register

  • 请求方法:POST

  • 请求头:Content-Type: application/json;charset=utf-8

  • 请求体:

// 用户名和手机号唯一,如果数据库已经有,请修改{"code":"666666","username":"xiaoxiao","password":"123456","repeatPassword":"123456","mobile":"13006120403"}


2.2 登录接口

  • 请求网址:http://182.92.81.159:8080/wx/auth/login

  • 请求方法:POST

  • 请求头:Content-Type: application/json;charset=utf-8

  • 请求体:{“username”:“user123”,“password”:“user123”}

2.3 进入首页

  • 请求网址:http://182.92.81.159:8080/wx/home/index

  • 请求方法:GET

  • 返回数据:

2.4 搜索商品

  • 请求网址:http://182.92.81.159:8080/wx/goods/list?keyword=手机&page=1&limit=10&categoryId=0
  • 请求方法:GET
  • 返回数据:

2.5 获取商品信息

  • 请求网址:http://182.92.81.159:8080/wx/goods/detail?id=1181000
  • 请求方法:GET
  • 返回数据:

2.6 添加购物车

  • 请求网址:http://182.92.81.159:8080/wx/cart/add

  • 请求方法:POST

  • 请求头:Content-Type: application/json;charset=utf-8

  • 请求体:{“goodsId”:1181000,“number”:1,“productId”:2}

  • 返回数据:

1.加入购物车之前,需要先登录 2.在同一个线程中 -加入购物车线程组 --登录 --加入购物车 -查看结果树显示:请先登录 分析:登录之后显示返回token,但是并没有传给加入购物车。 3.token是登录响应结果返回的信息(json格式),要想给加入购物车请求用,必须把它提取出来。 4.在登录添加—>后置处理器—>JSON提取器,进行提取(返回的token是二级) { "errno": 0, "data": { "userInfo": { "avatarUrl": "", "nickName": "user123" }, "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ0aGlzIGlzIGxpdGVtYWxsIHRva2VuIiwiYXVkIjoiTUlOSUFQUCIsImlzcyI6IkxJVEVNQUxMIiwiZXhwIjoxNzUzMTU2MjY2LCJ1c2VySWQiOjEsImlhdCI6MTc1MzE0OTA2Nn0.CisKA0jqVSxbq1J7kSg_H0D8ALuRBSM7vSAjRJ2a23o" }, "errmsg": "成功" } 5.提取的JSON对不对,可以在线程组添加—>取样器—>调试取样器 查看 6.登录之后的界面,都可以拿到token数据,登录浏览器 F12—>网络—>请求头 查看 key x-litemall-token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ0aGlzIGlzIGxpdGVtYWxsIHRva2VuIiwiYXVkIjoiTUlOSUFQUCIsImlzcyI6IkxJVEVNQUxMIiwiZXhwIjoxNzUzMTU2NTAwLCJ1c2VySWQiOjEsImlhdCI6MTc1MzE0OTMwMH0._Dqn4PNR-fWYE-W5XbPlE18_EAdDfvwv5OB5NideVjs 7.添加购物车用token,因此在加入 购物车请求 中添加—>配置元件—>HTTP信息头管理器(专门给添加购物车用)

2.7 查看购物车

  • 请求网址:http://182.92.81.159:8080/wx/cart/index

  • 请求方法:GET

  • 返回数据:

{"errno":0,"data":{"cartTotal":{"goodsCount":3,"checkedGoodsCount":3,"goodsAmount":1578.00,"checkedGoodsAmount":1578.00},"cartList":[{"id":5,"userId":1,"goodsId":1110016,"goodsSn":"1110016","goodsName":"天然硅胶宠物除毛按摩刷","productId":150,"price":39.00,"number":2,"specifications":["标准"],"checked":true,"picUrl":"http://yanxuan.nosdn.127.net/3bd73b7279a83d1cbb50c0e45778e6d6.png","addTime":"2020-03-03 22:21:21","updateTime":"2020-03-23 22:43:54","deleted":false},{"id":6,"userId":1,"goodsId":1181000,"goodsSn":"1181000","goodsName":"母亲节礼物-舒适安睡组合","productId":2,"price":1500.00,"number":1,"specifications":["1.5m床垫*1+枕头*2","玛瑙红"],"checked":true,"picUrl":"quality=90&thumbnail=200x200&imageView","addTime":"2020-03-23 22:45:58","updateTime":"2020-03-23 22:45:58","deleted":false}]},"errmsg":"成功"}

2.8 商品结算

  • 请求网址:http://182.92.81.159:8080/wx/cart/checkout?cartId=0&addressId=0&couponId=0&userCouponId=0&grouponRulesId=0

  • 请求方法:GET

  • 返回数据:

{"errno":0,"data":{"grouponRulesId":0,"actualPrice":1500.00,"orderTotalPrice":1500.00,"cartId":0,"userCouponId":0,"couponId":0,"goodsTotalPrice":1500.00,"addressId":0,"grouponPrice":0,"checkedAddress":{"id":0},"couponPrice":0,"availableCouponLength":0,"freightPrice":0,"checkedGoodsList":[{"id":6,"userId":1,"goodsId":1181000,"goodsSn":"1181000","goodsName":"母亲节礼物-舒适安睡组合","productId":2,"price":1500.00,"number":1,"specifications":["1.5m床垫*1+枕头*2","玛瑙红"],"checked":true,"picUrl":"quality=90&thumbnail=200x200&imageView","addTime":"2020-03-23 22:45:58","updateTime":"2020-03-23 22:53:06","deleted":false}]},"errmsg":"成功"}

2.9 提交订单

  • 请求网址:http://182.92.81.159:8080/wx/order/submit
  • 请求方法:POST
  • 请求头:Content-Type: application/json;charset=utf-8
  • 请求体:{“addressId”:“2”,“cartId”:“0”,“couponId”:“0”,“userCouponId”:“0”,“grouponLinkId”:0,“grouponRulesId”:0,“message”:“”}
  • 返回数据:{“errno”:0,“data”:{“orderId”:2,“grouponLinkId”:0},“errmsg”:“成功”}

2.10 查看我的订单

  • 请求网址:http://182.92.81.159:8080/wx/order/list?showType=0&page=1&limit=10

  • 请求方法:GET

  • 返回数据:

{"errno":0,"data":{"total":2,"pages":1,"limit":10,"page":1,"list":[{"orderStatusText":"已取消(系统)","aftersaleStatus":0,"isGroupin":false,"orderSn":"20200323326197","actualPrice":1500.00,"goodsList":[{"number":1,"picUrl":"quality=90&thumbnail=200x200&imageView","price":1500.00,"id":2,"goodsName":"母亲节礼物-舒适安睡组合","specifications":["1.5m床垫*1+枕头*2","玛瑙红"]}],"id":2,"handleOption":{"cancel":false,"delete":true,"pay":false,"comment":false,"confirm":false,"refund":false,"rebuy":false,"aftersale":false}},{"orderStatusText":"已取消(系统)","aftersaleStatus":0,"isGroupin":false,"orderSn":"20200303660201","actualPrice":12.90,"goodsList":[{"number":1,"picUrl":"http://yanxuan.nosdn.127.net/c7c74a96eacb29455dbf557b840eaaf5.png","price":4.90,"id":1,"goodsName":"磨砂杆直杆中性笔","specifications":["标准"]}],"id":1,"handleOption":{"cancel":false,"delete":true,"pay":false,"comment":false,"confirm":false,"refund":false,"rebuy":false,"aftersale":false}}]},"errmsg":"成功"}

三、实现业务场景测试用例

3.1 下单业务场景

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/29 7:23:50

蓝桥杯JAVA--启蒙之路(五)面向对象编程

一前言 时隔近一个月之后,我将继续更新我的学习内容,一天或许会更新不止一篇内容,欢迎关注。 二主要内容 面向对象编程,是一种通过对象的方式,把现实世界映射到计算机模型的一种编程方法。 现实世界中,…

作者头像 李华
网站建设 2026/4/28 0:01:28

并发限制多少合适?Hunyuan-MT-7B-WEBUI性能调优建议

并发限制多少合适?Hunyuan-MT-7B-WEBUI性能调优建议 在某省级政务多语种服务平台上线前压测中,运维团队发现:当并发请求从3路提升至6路时,平均响应时间从1.8秒骤增至5.2秒,部分请求甚至超时失败;而将并发数…

作者头像 李华
网站建设 2026/4/24 15:46:38

GPEN高效使用技巧:提升处理速度与输出质量

GPEN高效使用技巧:提升处理速度与输出质量 1. 什么是GPEN?不只是“高清放大”那么简单 你可能用过不少图片放大工具,但GPEN不是那种简单插值拉伸的“伪高清”方案。它不靠数学公式硬凑像素,而是像一位经验丰富的数字修复师——先…

作者头像 李华
网站建设 2026/4/25 7:32:21

Qwen3-Embedding-0.6B真实表现:响应速度很快

Qwen3-Embedding-0.6B真实表现:响应速度很快 1. 为什么是0.6B?轻量嵌入模型的实用价值 你有没有遇到过这样的场景:在搭建一个实时搜索服务时,嵌入模型一启动就吃掉8GB显存,推理延迟动辄800毫秒,用户还没输…

作者头像 李华
网站建设 2026/4/18 5:12:53

Clawdbot Web Chat平台保姆级教程:Qwen3-32B模型热切换与多版本共存配置

Clawdbot Web Chat平台保姆级教程:Qwen3-32B模型热切换与多版本共存配置 1. 为什么需要热切换与多版本共存 你有没有遇到过这样的情况:团队里有人想试试Qwen3-32B的强推理能力,有人却更习惯用Qwen2-7B跑日常问答,还有人正在调试…

作者头像 李华
网站建设 2026/4/30 9:40:41

ollama+Phi-4-mini-reasoning企业落地场景:智能解题助手与教育AI应用案例

ollamaPhi-4-mini-reasoning企业落地场景:智能解题助手与教育AI应用案例 1. 为什么教育场景需要轻量级推理模型 很多老师和教育科技公司都遇到过类似问题:想在本地部署一个能解数学题、讲清逻辑、还能陪学生一步步思考的AI助手,但主流大模型…

作者头像 李华