Locust 做多接口测试
import requests from locust import HttpLocust, TaskSet, task, HttpUser def mock_phone(): """ :return: """ res = requests.post(url='http://121.40.32.213:5000/api/v1/mock_data') phone = res.json()['data']['mock测试数据']['手机号'] # pprint.pprint(res.json()) print('用于测试的手机号', phone) return phone class Run(TaskSet): """ # task装饰该方法为一个事务方法的参数用于指定该行为的执行权重。参数越大,每次被虚拟用户执行概率越高,不设置默认是1 """ @task(1) # 任务项 def test_login(self): payload = { 'mobile': mock_phone(), 'captcha': '12345678' } url = '/addons/miniform/login/mobilelogin' res = self.client.post(url, data=payload) if res.json()['code'] == 1: print('登陆成功') print(res.json()) header = { 'token': res.json()['data']['token'] } return header else: print('登陆失败!') @task(1) # 2查询用户我的-奖章-奖章数量 def test_jian_zhang(self): payload = {} url = '/api/v1/my/Medal/mycount' print(1111111, self.test_login()) # 用于检测token是否传递过来 res = self.client.post(url, data=payload, headers=self.test_login()) if res.json()['code'] == 1: print('获取数据成功') print(res.json()) else: print('获取数据失败!') # # 这个类类似设置性能测试,继承HttpLocust # class websitUser(HttpLocust): # # 指向一个上面定义的用户行为类 # task_set = [Run] # host = 'https://sxty.zjzxsl.com/' # # 执行事物之间用户等待时间的下界,单位毫秒,相当于lr中的think time # min_wait = 1000 # max_wait = 6000 # class WebSiteUser(HttpUser): tasks = [Run] max_wait = 5000 min_wait = 1000 if __name__ == '__main__': import os os.system('locust -f demo_06.py --host=********')
声明 欢迎转载,但请保留文章原始出处:) 博客园:https://www.cnblogs.com/chenxiaomeng/
如出现转载未声明 将追究法律责任~谢谢合作
分类:
工具-locust
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2021-08-10 yarn 基本安装和使用