08-03 性能测试--数据准备与基准场景设计

基础性能脚本

延迟时间=网络时间+服务处理时间

主要使用监听器,通过两者的差值,判断响应时间消耗:

  • jp@gc - Connect Times Over Time
  • jp@gc - Response Times Over Time

08-03 性能测试--数据准备与基准场景设计_第1张图片

调试脚本阶段,可以使用查看结果树等监听器来观察运行结果

正式执行时,需要将其禁用,避免消耗服务器资源

准备数据

获取登录 session,提供给后续接口使用:

从登录的响应中获取 session,传递到 后续接口 的请求头中使用

  1. 使用 cookies 管理器

08-03 性能测试--数据准备与基准场景设计_第2张图片

  1. 后置处理器

在登录请求上添加 正则表达式提取器

08-03 性能测试--数据准备与基准场景设计_第3张图片

调试正则表达式是否正确:

在查看结果树中,找到对应的请求,进入正则调试

08-03 性能测试--数据准备与基准场景设计_第4张图片

填写正则表达式(确定左右边界,注意是否采取贪婪模式),点击【test】,查看结果:

08-03 性能测试--数据准备与基准场景设计_第5张图片

将调试无误的正则表达式,回填到 正则表达式提取器 中:

08-03 性能测试--数据准备与基准场景设计_第6张图片

08-03 性能测试--数据准备与基准场景设计_第7张图片

参考链接:https://blog.csdn.net/quiet_g...

延伸:json 表达式调试

08-03 性能测试--数据准备与基准场景设计_第8张图片

根节点:$

获取键值对:$.对应的键名称

08-03 性能测试--数据准备与基准场景设计_第9张图片

参考链接:https://blog.csdn.net/df0128/...

通过后置处理器引用获取值:

08-03 性能测试--数据准备与基准场景设计_第10张图片

08-03 性能测试--数据准备与基准场景设计_第11张图片

  1. 通过 HTTP 信息头管理器,将提取的 cookie 值传递到下一个请求的请求头中

08-03 性能测试--数据准备与基准场景设计_第12张图片

其次,可以通过 HTTP Cookie 管理器 精准传递指定用户的 cookie 值

08-03 性能测试--数据准备与基准场景设计_第13张图片

断言

为对应的请求添加响应断言:

08-03 性能测试--数据准备与基准场景设计_第14张图片

08-03 性能测试--数据准备与基准场景设计_第15张图片

逻辑控制器

仅一次控制器

对于单线程多次循环,只执行一次;但是对于多线程的情况,还是会执行多次的

08-03 性能测试--数据准备与基准场景设计_第16张图片

吞吐量控制器

无论线程多少,吞吐量控制器下的请求只执行指定次数

08-03 性能测试--数据准备与基准场景设计_第17张图片

08-03 性能测试--数据准备与基准场景设计_第18张图片

Critical Section Controller

控制请求按指定顺序执行

08-03 性能测试--数据准备与基准场景设计_第19张图片

08-03 性能测试--数据准备与基准场景设计_第20张图片

连接数据库获取数据

需要用到:

  1. JDBC Connection Configuration:用于连接数据库

08-03 性能测试--数据准备与基准场景设计_第21张图片

  1. JDBC Request:使用 SQL 语句获取数据

08-03 性能测试--数据准备与基准场景设计_第22张图片

参考链接:https://blog.csdn.net/sinat_2...

  1. 引用值:${变量名}

08-03 性能测试--数据准备与基准场景设计_第23张图片

获取CSV文件数据

需要用到:CSV Data Set Config

08-03 性能测试--数据准备与基准场景设计_第24张图片

相关配置:

08-03 性能测试--数据准备与基准场景设计_第25张图片

参考链接:https://www.cnblogs.com/sandy...

函数助手

  1. 将提取值存储到系统属性中:

08-03 性能测试--数据准备与基准场景设计_第26张图片

  1. 参数化:

确定并发数

在线用户数的评估:在没有基础数据参考的情况下,以注册用户的 5%-10% 作为在线用户

单位时间在线用户数 = (单次业务时间*业务量)/ 业务总时间

你可能感兴趣的