Locust实现“检查点”功能

  检查点简而言之是用来检查脚本是否达到事先预想的结果,因为Locust判断请求是否成功只是通过请求响应的状态码是否为200或2xx来进行,缺乏可靠性。因此,有时请求返回的是200,但是却并未是测试想要的结果。所以需要使用检查点来检查请求返回的数据是否正确,增加脚本的可靠性和说服力。

  要获取到请求返回的数据信息,可以使用正则表达式来获取页面中想要的内容,如果是对http接口的压测,可以直接获取到接口的返回信息进行检验。可根据实际需要选择哪种方式校验脚本是否运行成功。

  下面以注册业务的压测脚本为例:

 1 #任务集 用户行为脚本
 2 class Userbehavior(TaskSet):
 3 
 4     @task(1)  # 权重小
 5     def SignUp(self):
 6         data = {
 7             'username': 'cc',
 8             'password': '123456',
 9             'passwordConfirm': '123456',
10             'firstName': '',
11             'lastName': '',
12             'address1': '',
13             'address2': '',
14             'register.x': '33',
15             'register.y': '9'
16         }
17         response = self.client.post('/WebTours/login.pl', data=data, name='用户注册', catch_response=True)
18         #断言
19         if "welcome to the Web Tours family" in response.text:
20             response.success()
21         else:
22             response.failure("注册失败")
23             print(response.text)
24 
25 #测试场景设置
26 class WebSite(HttpLocust):
27     task_set = Userbehavior  #指定任务集
28     min_wait = 2000  #最小等待时间  毫秒
29     max_wait = 5000  #最大等待时间  毫秒
30     stop_timeout = 60  #单位秒,运行时间
31     host = 'http://127.0.0.1:1080'  #服务器域名
执行方式:
1)保存上述代码到 SignUp.py
2)Win + R 输入 cmd 打开命令行
3)通过 cd 进入到文件目录 
4)输入 locust -f SignUp.py 运行
5)打开网页,输入网址:http://localhost:8089/

版权声明:本文为xwsh原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xwsh/p/12692329.html