zoukankan      html  css  js  c++  java
  • 性能数据的准备-Jmeter

    性能测试的一般流程:
    收集性能需求——>编写性能脚本——>执行性能测试——>分析测试报告——>系统性能调优
    在收集性能需求后,我们会思考:
    负载测试时并发时需要多少数据?例:登录
    DB数据是否和线上接近?
    所以——我们需要在测试前批量造一批数据进行性能测试
    性能数据有个重要的点:数据必须带有特殊标记,方便与其他正常数据隔离并且在测试完成后销毁。
     
    不同公司的性能数据不一样,这里我讲一下最常见的两种制造方式:
    1、数据库直接插入性能测试数据
     
    首先下载一个mysql的jar包放到jmeter安装目录的lib下或者直接在测试计划处引用

    然后新建一个jdbc connection configration,连接目标数据库,需要填写数据库ip+端口号,用户名和密码(改用户需有修改的权限)
     
    创建一个jdbc request,把需要插入的数据库语句附上,并且把需要动态修改的参数(类似用户名)参数化
     
    新增一个用户自定义变量,将参数化的变量写入,并且通过函数助手生成随机数,变量我以rac为标记,性能测试完成便于删除这些脏数据。
     
     
    最后在线程组输入你需要创建的数据个数就可以啦~
    我比较喜欢用循环控制器,看起来比较简洁~
     
    通过数据库插入的方式造数据的方式,sql厉害的童鞋也可以写存储过程
     
    2、批量轮询跑接口造数据
    最简洁的版本,只跑一个接口造数据:
    将自己需要创建的用户名+密码放在一个csv文件里面,通过csv data config参数化获取uname,pass
     
    创建一个http请求,在注册用户的接口data处参数化用户名和密码:
    最后一步,线程组设置csv文件里的用户数,跑一遍后就创建了一批性能测试用户啦!
     
    当然,这只是最基础版本的。通常的测试数据都关联多张表,所以我们需要给每个用户跑多个接口,那么这个时候,我们就需要参数关联这个秘诀了——
     
    首先同上,添加一个csv data config,将创建的性能测试数据的用户名,密码的csv文件添加进去
    新建一个http请求,放登录接口,参数化登录名和密码,从性能测试用户的csv文件中动态获取
    登录成功后,需要获取到token作为其他接口造数据的关键!常用postman调接口的开发大哥都知道token的重要性,通行证呀!
    通过正则表达提取器获取到token后放到公共信息头管理器中。
    最后添加几个http请求,将造数据需要的接口写入即可
    这次先介绍这两种方式,后续持续更新。
    其实有写python版本的,后续放在对应的分类里面做链接~

  • 相关阅读:
    如何写一个bat文件,让他去执行某一个地方的bat文件
    服务器加电自动开机模式设置
    第三章 线程状态
    第二章 线程安全
    第一章 线程
    多线程入门
    异常
    SSO系统介绍
    解决:Nginx访问静态页面出现中文乱码
    错误处理:java.lang.NoClassDefFoundError: javax/jms/JMSContext
  • 原文地址:https://www.cnblogs.com/rachelxiao/p/12164259.html
Copyright © 2011-2022 走看看