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

python locust 性能测试:嵌套

时间:2019-01-01 17:14:29      阅读:338      评论:0      收藏:0      [点我收藏+]

标签:python   pass   http   def   https   报错   and   模拟   定义   

 

TaskSet类和TaskSequence类可用于嵌套<可以在TaskSequences中嵌套TaskSets,反之亦然>;
from locust import TaskSet, task, HttpLocust, TaskSequence, seq_task
import subprocess


class WebUser(TaskSet):
    @task(5)
    def first_task(self):
        print(执行5次;)

    @task(2)
    class IosUser(TaskSet):
        @task(1)
        def second_task(self):
            print(1次)

        @task(2)
        def three_task(self):
            print(2次)
            self.interrupt()

    @task(2)
    class AndroidUser(TaskSequence):
        @seq_task(2)
        @task(1)
        def android_task(self):
            print(这是android用户;)
            self.interrupt()

        @seq_task(1)
        @task(1)
        def ios_task(self):
            print(这是ios用户;)


class LocustFun(HttpLocust):
    host = https://passport.cnblogs.com
    task_set = WebUser
    max_wait = 6000
    min_wait = 3000


if __name__ == __main__:
    subprocess.check_call(
        locust -f G:\Interface_framework_pytest\\tmp\\test2.py --no-web -c 10 -r 1)
self.interrupt()函数用于将执行移交给父TaskSet,需要在嵌套中使用,在Locust类的task_set属性指向的主TaskSet中使用会报错:InterruptTaskSet exception具有中断功能,可以与任务加权一起定义模拟用户离开论坛的可能性;
TaskSequence类,装饰器@seq_task(1),控制任务的执行顺序,参数:number;

python locust 性能测试:嵌套

标签:python   pass   http   def   https   报错   and   模拟   定义   

原文地址:https://www.cnblogs.com/changqing8023/p/10204951.html

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