https://loader.io is a very simple and starter easy tool for stress testing which is cloud-based (Amazon’s US-east data center) by SendGrid Labs. You can use it for both performance or load test to measure how your application (or API) performs under pressure and to know if your application need scaling (up or out) servers or use caching …etc.
Some of features of this online tool:
- Testing websites and API
- Support automation
- Has free plan for 10000 clients
- Has add-on in Azure portal
- Sharing result and statistics with others
- Watch the test in the real time
- Verification for legal use because there is other online services used for DDoS attacks
This tool support three types of testing:
- Clients per test
For example: 200 clients over 100 seconds will split up to 2 client connections per second (Ideal for performance test and here you will concern in the response time).
- Clients per second
For example: 20-second test with 1,000 clients per second is the same as a 20-second test at 20,000 clients per test (Ideal for performance test).
- Maintain client load
For example: If you specify 0 and 10,000, the test will start with 0 clients and increase up to 10,000 simultaneous clients by the end of the test (Ideal for load test).
Better to go with different test types to know how your website behave under different circumstances.
For more details, you can check this link http://support.loader.io/article/16-test-types
Also they have two plans:
Sign up for free plan but you need to verify your account (this is the first verification):
Add your website host:
Again you need to verify if you own this host to prevent malicious attacks like DDoS:
Just download the file and copy it to the root of your website
For example http://%5BYour Domain]/loaderio-082ba4dd0e3b57dee160f21e7ecc6f63.txt
Then you can start new test…
Define the URLs to run test against them.
As the below image you can define GET/POST, define custom headers (mostly with API) and other parameters
Choose test types and defines the Number of users and duration:
And you can schedule it
It’s only support Basic authentication which It is insecure authentication and mostly no one use it these days.
Run the test to see the test results:
Here we can see Number of (Successful responses) which return 200 HTTP Code and also Number of (Timeout) responses or Failed responses.
Here shows the average response times (blue) and the number of active clients (green)
The details graph shows details about:
- Total requests made
- Total responses received
- Success responses (response codes under 400) – ideally all responses fall in this category
- 400-level errors (response codes 400-499) – often these indicate authentication problems, something is missing, or a number of other problems.
- 500-level errors (response codes 500-599) – generally application errors. Check your logs for error details
- Timeouts – no data received for the timeout period (10 seconds by default)
- Network errors – DNS resolution or TCP connection problems
Here you can see the size of Bandwidth sent/Received by loader.io
For more details about the Test Results http://support.loader.io/article/19-test-results