Quick Start Example locustfile.py
This is a quick start for a small example locustfile.py:
FromLocustImportHttplocust,TaskSetDefLogin(L):L.Client.Post("/login",{"Username":"Ellen_key","Password":"Education"})DefIndex(L):L.Client.Get("/")DefProfile(L):L.Client.Get("/profile")ClassUserbehavior(taskset): tasks = { index:2, profile :1} def on_start (selflogin ( self) class websiteuser ( httplocust): task_set = Userbehavior min_wait = 5000 max_wait = 9000
Here we define a few locust tasks that pass in a parameter (an instance of locust) and can be called normally. These tasks are clustered within the class named Taskset in the Tasks property. We also define a class named Httplocust, which represents a user, and we define a virtual user's wait time between performing different tasks, as if the Taskset class should define the user's "behavior." Tasksets can be nested.
The Httplocust class inherits the Locust class and adds a Slave property, which is an instance of httpsession that is used to initiate an HTTP request.
In addition, we can define tasks, which is more convenient because of the use of the @task adorner. The following code is equivalent to the code above.
FromLocustImportHttplocust,TaskSet,TaskClassUserbehavior(TaskSet):DefOn_Start(Self):"" "On_Start is called if a locust start before any task is scheduled" ""Self.Login()DefLogin(Self):Self.Client.Post("/login",{"Username":"Ellen_key","Password":"Education"})@task(2)DefIndex(Self):Self.Clientget ( "/" ) @task (1) def profile (selfself. Client. Get () class Websiteuser (httplocust): task_set = userbehavior min_wait = 5000 span class= "n" >max_wait = 9000
The Locust class (like Httplocust, because it's a subclass) can define the minimum and maximum wait times-based on the wait time between the M virtual user-task (minimum wait and maximum wait), as with other user behavior.
Start Locust
If the above file is named locustfile.py and we execute the command path and this file is in the same sibling directory, then long can be started by the following command locust
Locust--host=http://example.com
If the locust file is placed elsewhere:
Locust-f. /locust_files/my_locust_file.py--host=http://example.com
If you need to run locust distributed under multiple processes, we can start a main process with "-master":
Locust-f. /locust_files/my_locust_file.py--master--host=http://example.com
You can then start any number of slave processes:
Locust-f. /locust_files/my_locust_file.py--slave--host=http://example.com
If we want to run locust on multiple machines, we can also define the primary server to which it belongs while starting from the server (if you are running locust on only one machine, you do not need to do this because the primary server defaults to 127.0.0.1)
Locust-f. /locust_files/my_locust_file.py--slave--master-host=192.168.0.100--host=http://example.com
Ps:
See all feature Options
Locust–help
Open the Locust page interface
If you have started locust with either of these commands, then you should open your browser and point to http://127.0.0.1:8089 (if you run locust locally). Then you will be presented with the following gorgeous page.
Python-based performance load test locus-2-Quick Start