locust登录及依赖接口压力测试

举报
建帅小伙儿 发表于 2022/09/25 00:43:31 2022/09/25
【摘要】 一、locust登录及依赖接口压力测试 需求: 1.登录 2.change 接口下发 change_acl_mode.py # coding=utf-8""" @Project :pachong-master @File :change_acl_mode.py @Author :gao...

一、locust登录及依赖接口压力测试

需求:

1.登录

2.change 接口下发

change_acl_mode.py


   
  1. # coding=utf-8
  2. """
  3. @Project :pachong-master
  4. @File :change_acl_mode.py
  5. @Author :gaojs
  6. @Date :2022/7/13 10:09
  7. @Blogs : https://www.gaojs.com.cn
  8. """
  9. from locust import HttpUser, between, task, TaskSet, tag
  10. import os
  11. # 强制去掉控制台InsecureRequestWarning
  12. import urllib3
  13. # 随机产生UA类库
  14. from faker import Factory
  15. urllib3.disable_warnings()
  16. class TaskTest(TaskSet):
  17. def on_start(self):
  18. """
  19. description:每个用户执行此段代码
  20. :return:
  21. """
  22. # 每个用户执行此段代码
  23. print('==================== 清理log结束,压测开始, 登录虚拟站点并且 切换mode !!!========================')
  24. # pass
  25. # 压测任务,也可以是@task(10)啥的,这个数字是代表权重,数值越大,执行的频率就越高
  26. @task
  27. def stress_get(self):
  28. """
  29. 请求httpbin
  30. :return:
  31. """
  32. url = '/prx/000/http/localh/login'
  33. data = {
  34. "Content-Type": "application/x-www-form-urlencoded, charset=UTF-8",
  35. 'Connection': 'close',
  36. "method": "localdb",
  37. "uname": "test6",
  38. "pwd1": None,
  39. "pwd2": None,
  40. "pwd": "admin",
  41. "hardwareid: ": ""
  42. }
  43. randon_ua = Factory.create()
  44. ua = randon_ua.user_agent()
  45. headers = {
  46. 'User-Agent': ua
  47. }
  48. rsp = self.client.post(url=url, headers=headers, data=data, verify=False, allow_redirects=False, name='loginVsite压测')
  49. # print(rsp.status_code)
  50. assert rsp.status_code == 302
  51. print(rsp.text)
  52. url_mode = 'https://192.168.120.65:555/prx/000/http/localhost/accessmode?modename=mode2'
  53. rsp1 = self.client.get(url=url_mode, name='访问模式切换')
  54. print(rsp1.status_code)
  55. assert rsp1.status_code == 200
  56. # 执行并发测试后执行的动作,比如保存log等操作,查看报告http://localhost:8089/
  57. def on_stop(self):
  58. pass
  59. class UserBehavior(HttpUser):
  60. host = '192.168.120.65:555'
  61. # 每次请求停顿时间
  62. wait_time = between(3, 10)
  63. tasks = [TaskTest]
  64. if __name__ == "__main__":
  65. os.system("locust -f change_acl_mode.py --host=https://192.168.120.65:555 --web-host=127.0.0.1")

image-1657686641092

二、运行及报告

image-1657686673105

image-1657686701385

image-1657686552833

image-1657686565706

image-1657686575763

文章来源: blog.csdn.net,作者:懿曲折扇情,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/qq_41332844/article/details/126837360

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。