码迷,mamicode.com
首页 > 编程语言 > 详细

Python locust性能测试框架模板

时间:2019-08-17 12:58:59      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:set   zh-cn   api   gen   ext   http   pre   ali   plain   

locust框架模板

from locust import HttpLocust, TaskSet, task
import Queue


class UserBehavior(TaskSet):

    def setup(self):
        print(task setup)

    def teardown(self):
        print(task teardown)

    def on_start(self):

        # key = self.login()
        request_url = "/api/user/getkey"
        request_json = {"username": "qxzn", "userpwd": "qx6688"}

        response = self.client.post(url=request_url, json=request_json)
        # print response.status_code
        # print response.text
        if response.status_code != 200:
            print u"返回异常,请求返回状态码:", response.status_code
        elif response.status_code == 200:
            print u"返回正常:", response.status_code
        global key_1, key_2
        key_1 = response.text.split(‘‘‘appkey":"‘‘‘)[1].split(")[0]
        key_2 = response.text.split(‘‘‘infokey":"‘‘‘)[1].split(")[0]
        print key_1 + - + key_2
        data = self.locust.user_data_queu
        print data

    def on_stop(self):
        # 虚拟用户结束Task时运行
        print(end)

    @task(1)
    def resList(self):

        # key = self.login()
        header = {Accept: application/json, text/plain, */*,
                  Accept-Encoding: gzip, deflate,
                  Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2,
                  Connection: keep-alive,
                  User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0,
                  Content-Type: application/json;charset=utf-8,
                  Authorization: key_1 + - + key_2}
        data = {"num": 15, "current_page": 1, "province": "", "city": "", "type": ""}
        request_url = "/api/desk_device/devicelist"

        response = self.client.post(url=request_url, headers=header, json=data)
        if response.status_code != 200:
            print u"返回异常,请求返回状态码:", response.status_code
        elif response.status_code == 200:
            print u"返回正常", response.status_code


class WebsiteUser(HttpLocust):

    def setup(self):
        print(locust setup)

    def teardown(self):
        print(locust teardown)

    user_data_queue = Queue.Queue()
    task_set = UserBehavior
    host = "http://xxxx.com:8095"
    min_wait = 5000
    max_wait = 8000

 

Python locust性能测试框架模板

标签:set   zh-cn   api   gen   ext   http   pre   ali   plain   

原文地址:https://www.cnblogs.com/monogem/p/11367943.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!