Skip to content
Snippets Groups Projects
Forked from PortalMEC / portalmec
676 commits behind the upstream repository.
locustfile.py 1.33 KiB
# locust --host=http://localhost:3000
from locust import HttpLocust, TaskSet
from random import randrange, sample

# def login(l):
#     l.client.post("/login", {"username":"ellen_key", "password":"education"})

def users(l):
    l.client.get("/v1/users")

def learning_object(l):
    l.client.get("/v1/learning_objects/" + str(randrange(1,18000)), name="/v1/learning_objects/:id")

def learning_objects(l):
    l.client.get("/v1/learning_objects")

def search(l):
    words = ['dna', 'teste', 'arvore', 'amazonia', 'portugues', 'computador', 'ciencia']
    l.client.get("/v1/search?query=" + sample(words, 1)[0] + "&search_class=LearningObject", name="/v1/search?search_class=LearningObject")

def licenses(l):
    l.client.get("/v1/licenses")

def mime_types(l):
    l.client.get("/v1/mime_types")

def object_types(l):
    l.client.get("/v1/object_types")

def roles(l):
    l.client.get("/v1/roles")

def subjects(l):
    l.client.get("/v1/subjects")

def educational_stages(l):
    l.client.get("/v1/educational_stages")

class UserBehavior(TaskSet):
    tasks = {learning_object:5, learning_objects:2, users:1, search:5, licenses:1, mime_types:1, object_types:1, roles:1, subjects:1, educational_stages:1}

    # def on_start(self):
    #     login(self)

class WebsiteUser(HttpLocust):
    task_set = UserBehavior
    min_wait=5000
    max_wait=15000