Skip to main content

A simple CLI load testing tool.

Project description

assault

A simple CLI load testing tool.

Installation

Install using pip:

$ pip install assault

Usage

The simplest usage of assault requires only a URL to test against and 500 requests synchronously (one at a time). This is what it would look like:

$ assault https://example.com
.... Done!
--- Results ---
Successful requests     500
Slowest                 0.010s
Fastest                 0.001s
Average                 0.003s
Total time              0.620s
Requests Per Minute     48360
Requests Per Second     806

If we want to add concurrency, we'll use the -c option, and we can use the -r option to specify how many requests that we'd like to make:

$ assault -r 3000 -c 10 https://example.com
.... Done!
--- Results ---
Successful requests     3000
Slowest                 0.010s
Fastest                 0.001s
Average                 0.003s
Total time              2.400s
Requests Per Minute     90000
Requests Per Second     1250

If you'd like to see these results in JSON format, you can use the -j option with a path to a JSON file:

$ assault -r 3000 -c 10 -j output.json https://example.com
.... Done!

Development

For working on assult, you'll need to have Python >= 3.7 (because we'll use asyncio) and pipenv installed. With those installed, run the following command to create a virtualenv for the project and fetch the dependencies:

$ pipenv install --dev
...

Next, activate the virtualenv and get to work:

$ pipenv shell
...
(assault) $

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

assault-1.0.0.tar.gz (104.7 kB view details)

Uploaded Source

Built Distribution

assault-1.0.0-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file assault-1.0.0.tar.gz.

File metadata

  • Download URL: assault-1.0.0.tar.gz
  • Upload date:
  • Size: 104.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.37.0 CPython/3.7.2

File hashes

Hashes for assault-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ef6a9c39ad8edabf041259df0ec55ae50c37da4187cfcd4ec902ec685465398c
MD5 d12abbe4391c920aac8436dc44e846ee
BLAKE2b-256 5de08f70a07d04fa683d9e035ee609c26b0add58b29ec1adf2ab2a0716760512

See more details on using hashes here.

File details

Details for the file assault-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: assault-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.37.0 CPython/3.7.2

File hashes

Hashes for assault-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ec425e5cfed560e185ce7ce0b2b11f620c6f9d8cf1caa4447ec711be32fefa74
MD5 f6b800cfebe647e015b8de34adaeadf1
BLAKE2b-256 356698bfffdb282c30ed329ef6359a0bc495e55ca385bc4c571d91282d39c1c0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page