需求
本次压测范围包含登录接口,但是压测环境user表用户数据量太少,和生产环境数据量不是一个量级,因此,需要先通过并发跑注册接口造用户数据
需要参数化的字段是username和phone
说明:本次演示的接口是示例接口,非实际生产环境接口
注册接口如下:
方案一:CSV数据文件设置
我们先通过代码(python或者java均可)造一定量的参数化数据写在参数化reg.txt文件中
package com.qzcsbj;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
/**
* @公众号 : 全栈测试笔记
* @博客 : www.cnblogs.com/uncleyong
* @微信 : ren168632201
* @描述 : <>
*/
public class Tester {
public static void main(String[] args) throws IOException {
File f = new File("d:/reg.txt");
FileWriter fw = new FileWriter(f);// 构建一个文件字符输出流
for (int i = 1; i < 1000001; i++) {
String suffix = String.format("%07d", i);
fw.write("jack" + suffix + ",1360" + suffix + "\n");
}
fw.close();
}
}
生成的数据
jack0000001,13600000001
jack0000002,13600000002
jack0000003,13600000003
jack0000004,13600000004
jack0000005,13600000005
jack0000006,13600000006
jack0000007,13600000007
jack0000008,13600000008
jack0000009,13600000009
jack0000010,13600000010
jack0000011,13600000011
jack0000012,13600000012
jack0000013,13600000013
jack0000014,13600000014
jack0000015,13600000015
jack0000016,13600000016
jack0000017,13600000017
jack0000018,13600000018
jack0000019,13600000019
jack0000020,13600000020
......
然后通过csv数据文件设置实现注册接口的参数化
http请求
方案二:计数器
通过计数器,可以造指定格式的数字,然后和前缀字符串拼接形成参数值,比如username,前缀都是jack,计数器生成5位,拼接后就是jack0000001、jack0000002这种
http请求
总结
上述示例接口,用计数器更简单,我们不需要写代码造数据,也不需要CSV,同时规避了CSV参数化文件路径的问题(比如win和linux路径不一样)。
最后:下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
软件测试面试小程序
被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!
涵盖以下这些面试题板块:
1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux
6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础