0

How does post call work with LOcustIO? I was suspecting Locust not doing what it is suppose to do because it was returning success for all load testing I was running so I decided to post, write to the DB via a web application using LocustIO, to my surprise nothing was written to the db. Though I know some have successfully done this, so I want to know how to write to the Db using LocustIO as part of my load testing.

This is the code used:

from locust import HttpLocust, TaskSet, task
import logging, sys
from credentials import *

class LoginWithUniqueUsersSteps(TaskSet):
    institutionCode = "NOT_FOUND"
    username = "NOT_FOUND"
    password = "NOT_FOUND"

    def on_start(self):
            if len(USER_CREDENTIALS) > 0:
               self.institutionCode, self.username, self.password = USER_CREDENTIALS.pop()

    @task
    def login(self):
        self.client.post("/dejavuweb/", {
           'institutionCode': self.institutionCode, 'email': self.username, 'password': self.password
        })
        logging.info('Login with %s institutionCode %s username and %s password', self.institutionCode, self.username, self.password)

    @task
    def createTerminal(self):
        response = self.client.request(method="POST", url="/dejavuweb/Home#Function/7", data= {"TerminalName": "RealterminalName"})
        print("Create; Response status code:", response.status_code)
        print("Create; Response content:", response.content)

class LoginWithUniqueUsersTest(HttpLocust):
    task_set = LoginWithUniqueUsersSteps
    host = "http://dev.trublend.cloud"
    sock = None

    def __init__(self):
        super(LoginWithUniqueUsersTest, self).__init__()

Mind you, I copied, edited the code snippet above to achieve what I want.

Screenshot of LocustIO result:

Test result of LocustIO

halfer
  • 19,824
  • 17
  • 99
  • 186
ken4ward
  • 2,246
  • 5
  • 49
  • 89

0 Answers0