多— 并发量 (注册用户总数;在线用户数、并发用户数)
快— 延时、响应时间(对请求作出响应所需要的时间=服务器处理时间+数据库处理时间+网络时间+客户端呈现时间)
好— 稳定性
省— 资源使用率
思考时间
吞吐量:单位时间内处理的请求书;
TPS:每秒事务数
通过具体的工作 —— 推出你要用的工具;
线程组——线程数(人);
做什么工作选用什么样的请求(如http请求、JDBC请求);可抓包查看http、https请求 或接口文档;
app 接口服务器性能 http/https协议,所以选择http请求;
全局变量(测试计划)、局部变量(某请求)
接口:
接口测试属于功能测试;测试流程(接口文档【接口地址;返回格式;请求方式;参数;请求头;】);根据接口文档编写测试用例;执行测试;查看接口返回的数据是否正确;)
内部接口:方法与方法之间的交互
调用对外包装的接口;
web接口、应用程序接口、数据库接口
jmeter操作:1.创建测试计划;
2.添加线程组;
3.添加http请求;
4.填入参数;协议;ip/域名;端口号(80,443,8080,3306等);方法;路径;请求参数;
5.断言;
6.添加监听器;
7.运行;
响应结果200请求已成功(请求已发送且有响应),需要查看结果与预期是否相同;
token,cookie,session,
HTTP Cookie 管理器;跨线程组的cookie需添加正则表达式提取(引用名称,(.*?)或(.+?),$1$,0,,debug sampler(有变量名都可以记录);
. 匹配任何字符;+ 一次或多次;?不要贪婪,即在第一个比赛成功后停止;
参数化:如手机号前2位验证,后9位可以使用随机数;函数助手__Random;
账号,密码;
jmeter参数化:csv数据控件 csv data set config;用户自定义变量 user defined variables;
函数助手 _csv read;用户参数 User Variables;
并发:某请求下添加同步定时器;
grafana监控平台:mysql,oracle,
在哪里可以使用函数和变量?
函数和变量可以写入任何测试组件的任何字段中(除了TestPlan)。一些字段不允许随机字符串,因为它们需要数字,因此将不接受函数。但是,大多数字段将允许功能。
配置元素由单独的线程处理。因此,诸如__threadNum之类的功能不能在诸如用户定义的变量之类的元素中正常工作。
从表中选择name ='$ {VAR}'的项目
如何引用变量和函数
在测试元素中引用变量是通过将变量名称括在' $ { '和' } '中来完成的。
函数的引用方式相同,但按照惯例,函数名称以“ __ ” 开头,以避免与用户值名称*冲突。一些函数使用参数来配置它们,这些参数用括号括起来,以逗号分隔。如果函数不带参数,则可以省略括号
本身包含逗号的参数值应在必要时转义。如果您需要在参数值中包含逗号,请像这样对它进行转义:' , '。
括号括住发送给函数的参数,例如$ {__ time(YMD)} 实际参数因函数而异。不需要参数的函数可以省略括号,例如$ {__ threadNum}。
如果函数参数包含逗号,请确保使用“ ”将其转义,否则JMeter会将其视为参数定界符。例如:
$ {__ time(EEE ,d MMM yyyy)}
属性与变量不同。变量是线程本地的;属性是所有线程共有的,需要使用__P或__property函数进行引用。
或者,仅使用/代替路径分隔符-例如C:/ test / $ {test} -Windows JVM将根据需要转换分隔符。
函数有两种:用户定义的静态值(或变量)和内置函数。
用户定义的静态值允许用户定义在编译和提交要运行的测试树时用其静态值替换的变量。此替换在测试运行开始时发生一次。例如,这可以用于替换所有HTTP请求的DOMAIN字段-只需更改测试以针对具有相同测试的其他服务器即可,这很简单。