Skip to content

GuoTengda1993/easy-locust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fe4f41a · May 31, 2020

History

35 Commits
May 31, 2020
Dec 10, 2019
May 10, 2020
May 18, 2020
Dec 10, 2019
May 19, 2020
Dec 10, 2019
May 18, 2020
May 18, 2020
May 10, 2020

Repository files navigation

Easy-Locust

Locust Links

Description

Easy-Locust is an extension tool for Locust. With this tool, you don't need to write locust scripts. What you need to do is just to edit Excel. Easy-Locust will generate locustfile automatically and run it.

If you need master-slave mode, you just need to fill Excel Sheet 'Slave', and use --master. The only precondition is to install the same version locustio in each Slave. Easy-Locust is not necessary for slaves.

easy-locust --web --web-port=8899 -- Run in web mode, you can config and trigger slave-nodes with this mode.

Use easy-locust --demo to generate an Excel demo, fill it and start your test.

Same parameters with locust, so I just introduce the different parameters here:

easy-locust -f xxx.xls -- This will transform Excel to locustfile, and run it. You can also use -f xxx.py.

easy-locust --xf xxx.xls -- -- This just transform Excel to locustfile, will not start test.

easy-locust -f xxx.xls --master -d -- -d is distributed mode, can automatically run slaves. There is one precondition, you need write slaves information in Excel at Slave Sheet.

easy-locust -f xxx.xls --master -d --boomer -- --boomer running boomer client in slaves, which is compiling by Golang. In this mode expect_code and expect_str is inoperative. Please keep port 9999 is unused in each slave, when using this mode.

OR, use:

import easy_locust

data = {
    "config": {},
    "apis": [],
    "auth": {},
    "user_info": [],
    "master_ip": "",
    "slaves": []
}

locustfile_str = easy_locust.factory(data)

Bug reporting

Open a Github issue and follow the template listed there.

https://github.com/GuoTengda1993/easy-locust

Authors

  • Guo Tengda

License

Open source licensed under the MIT license (see LICENSE file for details).

Change Log

  • 0.2.1: Easy-locust web mode.
  • 0.1.12: content-type support.
  • 0.1.11: Add boomer client as slave, which has much more preformance.
  • 0.1.10: Delete useless code.
  • 0.1.9: Support Json to locustfile. And can use easy_locust.factory(dict) to get strings of locustfile.
  • 0.1.6: Optimize locustFileFactory.py
  • 0.1.5: Check Response info (status code & expect str) if set "Expect Status Code" in Excel, otherwise not. Rely on locustio>=0.13.5