Pruebas de carga usando LOCUST

Locust es una herramienta de prueba de carga de código abierto. La prueba de carga es un tipo de prueba de software que se lleva a cabo para verificar la tolerancia/comportamiento del sistema bajo una carga esperada específica. El objetivo de Locust es realizar pruebas de carga en los sitios web y verificar la cantidad de usuarios simultáneos que un sistema puede manejar.
Durante una prueba de langostas, un enjambre de langostas atacará el sitio web objetivo, es decir. El comportamiento de cada langosta es configurable y el proceso de enjambre se supervisa desde una interfaz de usuario web en tiempo real.

Especialidad de langosta:

  • Los escenarios de prueba se pueden escribir en Python
  • Distribuido y escalable
  • Interfaz de usuario basada en web
  • Cualquier sistema puede ser probado usando esta herramienta

Instalación:

Locust se puede instalar con pip.

pip install locust

Una vez que la langosta se haya instalado con éxito, un comando de langosta debería estar disponible en su shell.
Para ver más opciones disponibles:

locust --help

Empezando:

from locust import HttpLocust, TaskSet, task
from locust import ResponseError
import json
  
   
class UserBehavior(TaskSet):
   
    def __init__(self, parent):
        super(UserBehavior, self).__init__(parent)
        self.token = ""
        self.headers = {}
   
    def on_start(self):
        # The on_start method is called 
        # when a simulated user starts 
        # executing that TaskSet class
        self.token = self.login()
        self.headers = {'Authorization': 'Bearer {}'.format(self.token)}
        self.login()
   
    def login(self):
        # admin login  and retrieving it's access token
        response = self.client.post("/login/",
                                    data = {'username': 'admin',
                                          'password': 'ZYT5nsg3565!'})
          
        return json.loads(response._content)['access']
   
   
  
class WebsiteUser(HttpLocust):
    # The task_set attribute should point
    # to a TaskSet class which defines 
    # the behaviour of the user
    task_set = UserBehavior
    min_wait = 5000
    max_wait = 9000

Inicie langosta:
para ejecutar el código anterior, cree un archivo de Python llamado locustfile.pyy abra el terminal en el directorio del archivo creado anteriormente. Luego escribe el siguiente comando en la terminal.

locust

Nota: Por defecto, Locust busca locustfile.py.

Después de la ejecución exitosa del comando anterior, debe abrir un navegador y presionar http://127.0.0.1:8089

La interfaz de usuario de Locust aparecerá como se muestra a continuación:

Publicación traducida automáticamente

Artículo escrito por RiyaKalia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *