遇一山,过一山,处处有风景;只要勇敢向前,一路尽是繁花盛开。 | (点击查看→)【测试干货】python/java自动化、持续集成、性能、测开、简历、笔试面试等

JMeter【第四篇】参数化

概念

参数化的原因,并不是网上说的真实模拟不同用户,真实反应服务器性能,而是:

  数据唯一性(比如注册名不能一样)

  避免数据库查询缓存

如何避免参数化:

  去掉唯一性校验的约束

  关闭数据库的查询缓存,mysql关闭方式,set global query_cache_type=0

同时,也可以参考loadrunner参数化:https://www.cnblogs.com/uncleyong/p/10702700.html

用户定义的变量

最主要的应用是参数化环境的ip和端口,这样,在“HTTP请求默认值”配置元件中填写参数就可以了,这样方便在不同的环境中切换测试

 

 

 

csv数据文件设置

在jmeter中做参数化,用得最多的就是CSV文件参数化

解释:

 

提醒:分隔符不能是参数化的值中的符号,否则会被截断,比如,你参数化整个json,逗号作为分隔符,而json中就有逗号,所以,发送请求的时候,会被截断。

 

线程共享模式:

所有现场:所有的线程共享一个数据文件

当前线程组:每个线程复制一份文件自己独用

当前线程:一个线程组一份文件,线程组内是所有现场

这里我就不演示上面各种模式的取值方式了,大家最好自己实践一下,这样印象更深刻

一个简单的应用(传k-v)

百度搜索,对搜索的关键字参数化

创建参数文件,因为只有一列,我可以很清楚的知道这一列是什么含义,所以没有在首行加变量名;另外,文件内容中,最后只能一个空行

循环4次

csv数据文件设置,设置为循环取值

名称是参数名,值是参数值

引用参数${参数名}

运行

第一次循环取第一个值

第二次循环取第二个值

第三次循环取第三个值

第四次循环取第一个值

设置不循环取值

第四次循环取EOF

 

posted @ 2019-05-25 16:36  全栈测试笔记  阅读(3453)  评论(0编辑  收藏  举报
浏览器标题切换
浏览器标题切换end