背景:2019年5月开始测试一个GIS项目,该GIS项目主要用于后续相关数据的展示,因此有一个需求是要造大量的数据展示在地图上。
首先,介绍一个jmeter里面的随机函数,即RandomString。
1、选择jmeter里面的函数助手
2、选择找到RondomString函数并进行你需要的字符的设置,这个图中的例子代表我要生成15位随机数字符
3、RandomString的用法即是将生成的${__RandomString(15,01234567890,)}这个函数放在你需要的地方。如图中的例子代表某个字段为15位的随机数,该函数是即插即用的,哪里需要放哪里,也可以与其他字符直接进行组合。
接着,我们进入正题,看如何设置随机的经纬度。
1、直接设置随机的经纬度是比较好设置的,但是我们希望尽量的真实,一般我们的一个数据都是随机的分布在地图上的,比如真实的数据会分布在杭州、南京、北京等这些城市。
我们先看下南京和杭州的经纬度:
南京的经度大概是118,纬度大概是32
杭州的经度大概是120,纬度大概是30
如果我们想在南京和杭州附近随机的去插数据,可将南京和杭州的经纬度的后面设置成随机的小数
根据我们在上述介绍的RandomString的用法,我们将南京和杭州的经纬度精确到小数点后4位,可写成
南京:118.${__RandomString(4,1234567890,) 32.${__RandomString(4,1234567890,)
杭州:120.${__RandomString(4,1234567890,) 30.${__RandomString(4,1234567890,)
2、由于我们可能会使用多个城市的经纬度,因此我们可以将城市的经纬度写到文件中,我们直接读取文件中的城市的经纬度
添加一个CSV Data Set Config,将文件中的数据读取出来
在CSV Data Set Config进行设置
仅读取文件中的经纬度,后面的南京和杭州只是便于区分
3、在脚本中要使用的时候,将上述的南京和杭州换成引用变量即可
南京:${longitude}.${__RandomString(4,1234567890,) ${latitude}.${__RandomString(4,1234567890,)
杭州:${longitude}.${__RandomString(4,1234567890,) ${latitude}.${__RandomString(4,1234567890,)
最后,仅需要这一条即可表示经纬度:
${longitude}.${__RandomString(4,1234567890,) ${latitude}.${__RandomString(4,1234567890,)
见截图
最后,相关脚本存在本人云盘https://pan.baidu.com/s/1P7xH5l8_4Yt9DPJfWA1ulg,由于是工作中脚本,密码暂不提供,需脚本可私,可相互交流
备注:{"type":${__Random(1,2,)}}