关注我,每天分享软件测试技术干货、面试经验,想要领取测试资料、进入软件测试学习交流群的可以直接私信我哦~~
一. 测试场景
压测“用户登陆”的场景,在用户登陆后,会调用大量的接口,为了 测试该场景的负载
二. 采用过的方案
方案1 . 直接使用Jmeter接口压测,但Jmeter在一个线程中的调用多个接口是同步的,故压测出来的结果不准确。
方案2. Jmeter用多个线程组压测,但这种方案压测出来是并行,并不符合场景,因为浏览器虽然是异步调用,但本质上也是一个线程执行。
三. 最终方案
Jmeter结合Python3.x的asyncio 和 aiohttp 结合。
因为Python的asyncio 可模拟浏览器的异步调用方式
四. 用例设计
1步 [User]: 使用CSV Data Config 读取用户名和密码
2步 [加密密码]: 使用BeanShell 调用加密的Jar为密码加密
3步 [Login Eclinical Page]: 登陆系统
4步 [Login Design]: 选择登陆子系统