All Projects → oslabs-beta → jagtester

oslabs-beta / jagtester

Licence: other
Express server load tester with middleware level data reporting

Programming Languages

typescript
32286 projects
HTML
75241 projects

Projects that are alternatives of or similar to jagtester

locust-docker
Docker image for the Locust load testing tool and sample Kubernetes configuration files for distributed deployment.
Stars: ✭ 17 (-70.18%)
Mutual labels:  load-testing, stress-testing
eat
Json based scenario testing tool(which can have test for functional and non-functional)
Stars: ✭ 41 (-28.07%)
Mutual labels:  load-testing, stress-testing
apistress
Very simple stress testing tool for API
Stars: ✭ 22 (-61.4%)
Mutual labels:  load-testing, stress-testing
ab-go
apache ab testing tool port in golang
Stars: ✭ 20 (-64.91%)
Mutual labels:  load-testing, stress-testing
StressThing
a software testing platform to perform stress test on web of things
Stars: ✭ 12 (-78.95%)
Mutual labels:  load-testing, stress-testing
jmeter-grpc-plugin
A JMeter plugin supports load test gRPC
Stars: ✭ 36 (-36.84%)
Mutual labels:  load-testing, stress-testing
load-testing-toolkit
Collection of open-source tools for debugging, benchmarking, load and stress testing your code or services.
Stars: ✭ 65 (+14.04%)
Mutual labels:  load-testing, stress-testing
LoadRunner
Load-testing framework for writing load/stress test scenarios in c#
Stars: ✭ 18 (-68.42%)
Mutual labels:  load-testing, stress-testing
Tcpcopy
An online request replication tool, also a tcp stream replay tool, fit for real testing, performance testing, stability testing, stress testing, load testing, smoke testing, etc
Stars: ✭ 4,028 (+6966.67%)
Mutual labels:  load-testing, stress-testing
K8s Testsuite
Test suite for Kubernetes
Stars: ✭ 149 (+161.4%)
Mutual labels:  load-testing
Postman To K6
Converts Postman collections to k6 script code
Stars: ✭ 180 (+215.79%)
Mutual labels:  load-testing
Vex
vex is a small PHP app that sends some load to a web application
Stars: ✭ 142 (+149.12%)
Mutual labels:  load-testing
Goose
Load testing tool, inspired by Locust
Stars: ✭ 151 (+164.91%)
Mutual labels:  load-testing
Sangrenel
Apache Kafka load testing "...basically a cloth bag filled with small jagged pieces of scrap iron"
Stars: ✭ 180 (+215.79%)
Mutual labels:  load-testing
Carrot
Distributed WebSocket and HTTP Load Testing Framework in Go
Stars: ✭ 143 (+150.88%)
Mutual labels:  load-testing
Ali
Generate HTTP load and plot the results in real-time
Stars: ✭ 3,055 (+5259.65%)
Mutual labels:  load-testing
Shadowreader
Serverless load testing for replaying website traffic. Powered by AWS Lambda.
Stars: ✭ 138 (+142.11%)
Mutual labels:  load-testing
Gatling Dubbo
A gatling plugin for running load tests on Apache Dubbo(https://github.com/apache/incubator-dubbo) and other java ecosystem.
Stars: ✭ 131 (+129.82%)
Mutual labels:  load-testing
Links-QA
Сборная солянка полезных ссылок для QA/тестировщика. Ссылки будут постоянно пополняться.
Stars: ✭ 42 (-26.32%)
Mutual labels:  stress-testing
Httprunner
One-stop solution for HTTP(S) testing, written in Python.
Stars: ✭ 2,628 (+4510.53%)
Mutual labels:  load-testing

Jagtester

npm version

There is a big community of developers using Express JS with Node.js to power their web applications. Our team of developers love the simplicity of Express and have used it numerous times in our applications. But, as developers who like to optimize the performance of our application, we wanted to test the performance of the server under heavy load, so we started looking around for solutions. Sure, there are a lot of products that can help developers test the performance of the server, but we wanted to go much deeper. What if we could show how each middleware within the server performs before sending out the response? What if we wanted to compare how the performance scales based on the requests per second? We couldn’t find the product we needed, so we did what every great developer team does, we created our own solution. Enter Jagtester.

Installing

For npm:

npm install jagtester

or yarn:

yarn add jagtester

Usage

It is very easy to use jagtester, just install it and include it as a middleware in your Express server, and you are ready to go.

const jagtester = require('jagtester');
app.use(jagtester(app));

NOTE: you need to pass your Express app to jagtester middleware, so it can enable middleware level reporting

NOTE: Make sure to put the Jagtester above all other global middlewares (for ex. express.static()), because the test will not be able to start if other middlewares are sending a response before the request can hit the jagtester middleware.

Now just run the Jagtester with

npx jagtester

and it will start up jagtester on a local server port 15000 (or next available port).

With our intuitive web interface, you will ba able to configure the test and run it. Make sure to also start your own server you want to use Jagtester on.

Features

  • Allows users to fully customize testing based on the needs of their application. Here are the options you can configure:
    • Requests per second (RPS) interval.
    • Starting and ending RPS.
    • Time to stay at each RPS range.
    • Ability to simulate traffic to one or more targets, with a specified percentage of the load going to each target.
  • Stop feature, which will allow the user to stop the current test if it is taking too long and get the results that have been generated so far.
  • Displays graphs to show a breakdown of all routes along with the error percentage.
  • Graphs to display details for each route, broken down to the middleware level to analyze the performance of each of the routes.
  • Export functionality to generate result reports, either from all tests or only single test results, with an ability to delete the collected results.
  • And for the lover of dark mode, we got you covered with an option to switch between light and dark modes.

We are open to any issues!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].