测试工程师深入了解被测业务交互过程、确定脚本用例后,可能需根据测试需求构造性能测试过程中所需的测试数据。以登录为例,为了更真实的模拟不同用户登录、随机购买商品等行为,可针对登录用户名、随机购买的商品信息进行参数化设计,保证每次登录或购买的商品信息都不相同,尽可能模拟真实的业务行为。因此,需在测试开始前系统中存在大量需要使用的用户信息及商品信息。
以本次测试为例,2小时内5万个用户登录,则意味着ECShop内需存在5万以上的可用帐号,而系统安装初期并没有提供这么多帐号。
测试过程中,测试工程师可利用Jmeter构造测试数据,当然,如果能够直接在数据库中利用存储过程生成是最好的办法,因为效率相对较高,但要求对表结构相对熟悉。
本次测试所需的5万以上的可用帐号,测试工程师利用Jmeter模拟真实用户注册行为,设置30个线程,每个线程进行2000次迭代,即可完成6万个注册帐号,便于后期测试使用。构造好测试帐号后,可将数据库备份,便于回归测试。以下详细介绍本次测试帐号构造过程。
BadBoy创建用户注册脚本
本次测试所需的用户注册脚本由BadBoy测试工具录制生成。
1、启动BadBoy,输入URL地址,如:http://192.168.0.110/ecshop/,如下图所示。
BadBoy录制界面
2、点击跳转按钮,录制首页访问,如下图所示。
录制首页信息
3、根据注册步骤,逐步操作,完成所有操作后,停止录制。
注册脚本步骤列表
4、脚本操作录制完成后,点击“File”-“Export to Jmeter”,导出Jmeter脚本。
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036【暗号:csdn999】
Jmeter迭代生成帐号
利用BadBoy生成的脚本,在Jmeter中优化后,执行迭代,生成帐号。
1、启动Jmeter,打开BodBoy录制的脚本,如下图所示。
加载用户注册脚本
2、利用数据生成工具,如Excel,创建6万个用户名,格式为t00001,保存为txt文件。
3、参数化用户名,密码不需要调整,利用CSV Data Set Config创建用户名参数“username”。选择“step1”,右键,“添加”-“配置元件”-“CSV Data Set Config”,如下图所示。
CSV Data Set Config设置界面
4、“Filename”输入测试数据所在路径,如“C:\userinfo.txt”,“Variable Names”设置供测试脚本调用的变量名,如“username”,其他默认设置即可,如下图所示。
用户名参数化设置
5、请求中引用“username”变量,如下图所示。
引用“username”参数
6、点击“Thread Group”,设置启动线程,如“30”。因BadBoy录制的Jmeter脚本,无法在“Thread Group”中设置循环次数,须在“Step1”中设置,因此此处不设置循环次数,默认为“1”,具体设置如下图所示。
设置线程数
7、点击“Step1”打开循环控制器设置,设置循环次数,如“2000”,与线程组组合生成30*2000=6万帐号。
设置循环控制器循环次数
8、测试过程中可能因为请求发送太快,服务器无法响应,可在请求间加入计时器,延缓请求发送频率,模拟更真实的注册操作,如下图所示,设置线程延迟时间为5秒。
设置定时器
所有操作设置完成后,即可执行该场景,完成6万测试帐号的注册,具体时间则由服务器性能决定。
Navicat备份数据库
所有帐号注册完成后,可将ECShop数据库备份,便于后续的测试使用。因ECShop数据库使用的是Mysql,则可利用Navicat进行数据库备份。如下图所示。
Navicat备份数据库
通过上述过程介绍,读者可学习利用Jmeter构造6万个ECShop注册用户,用于开展后续的用户登录及随机购买商品性能测试。
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。