【NO.7】HTTP请求-参数化

http://123.456.7.89:8080/article/relation/channel/0038/keyword/movie/start/0/size/20/

简单说一下这个URL的意思也算是做到仁至义尽:在article这个领域里面,定位到0038这个频道(channel),搜索与关键词(keyword)“movie”相关的东西,从搜索结果的第1条(start=0)开始罗列,一共列出20条结果。

一般情况,我们在本地Windows的操作系统上面新建和调试测试脚本,然后会将脚本上传到远程的Linux操作系统的测试机上面。原因是Linux操作系统的测试机自身的性能更好一些,利于同时向服务器发送大量的请求。

本地脚本的形式:

http://123.456.7.89:8080/article/relation/channel/0038/keyword/${__CSVRead(E:keyword.csv,0)}${__CSVRead(E:keyword.csv,next)}/start/0/size/20/

远程脚本的形式:

仅仅去掉"E:"即可。因为在Linux里面,测试工具Jmeter与keyword.csv文件是存放在同一级目录内的。

http://123.456.7.89:8080/article/relation/channel/0038/keyword/${__CSVRead(keyword.csv,0)}${__CSVRead(keyword.csv,next)}/start/0/size/20/

也可以不使用CSVRead函数,而替换为Random函数。虽然Random函数在代码层面不存在问题,但是距离模拟真实用户的行为是有差别的。

http://123.456.7.89:8080/article/relation/channel/0038/keyword/${__Random(1,2000000,)}/start/0/size/20/

==========================================补充说明之 keyword.csv ============================================

因为在使用中文的国家,真实用户的行为是通过“中文”来进行搜索,所以测试数据的准备必须是已经被编码(如:UTF-8)过的数据,这样的性能测试结果才是更加接近真实用户的行为。

原文地址:https://www.cnblogs.com/musicmovie/p/3683538.html