有奖捉虫:行业应用 & 管理与支持文档专题 HOT

上传参数文件

通过上传 csv 参数文件,您可以动态引用其中的测试数据,供脚本里的变量使用。 这样,当施压机并发执行这段代码,每条请求能动态、逐行获取 csv 里的每行数据,作为请求参数使用。
参数定义
默认 csv 首行作为参数名。在该模式下,PTS 读取数据时,会跳过第一行。
若不用 csv 文件首行做参数名,则可如下图所示,取消勾选“首行作为参数名”,然后勾选该参数文件所在的行,页面会展开一个参数名编辑框,供您自行编辑参数名。
?
?
?
参数使用
在代码中,您可以用参数名作为变量名,获取变量值。
每个 VU 每次迭代会按照顺序取 csv 的一行数据。
当 csv 文件被读取完最后一行数据后,下次会回到首行,继续循环读取。
参数文件组合与切分
若压测并发量很大,可勾选 “切分文件”,将大文件切分后,分给每个施压机使用。
一个场景可上传多个 csv 参数文件,进行跨文件参数组合。
不同 csv 文件的列名(参数名)需保持全局唯一。
若不同 csv 文件的行数不同,默认采用行数大的作为基准,行数少的 csv 文件会自行复制到跟基准文件相同行数,保证每次 VU 每次迭代的数据都是可预测的。

使用参数文件

简单模式场景

在简单模式的场景中,您可以用 ${} 的形式,使用参数文件里的参数。 以下面的 dataset.csv 为例:
MyKey,MyValue
key1,value1
key2,value2
上传完成后,即可如下图所示:
?
?
?

脚本模式场景

代码示例如下,用 dataset.get("MyKey"),可从 csv 文件获取参数名/列名为 MyKey 的参数值,作为请求体里的 value 值。
import dataset from 'pts/dataset';
?
export default function () {
const value = dataset.get("MyKey")
const postResponse = http.post("http://httpbin.org/post", {data: value});
console.log(postResponse)
};
?


http://www.vxiaotou.com