WebSocket Load Testing With k6 and JMeter, Tested
WebSocket load testing with k6 and JMeter, tested: 2,000 open sockets, refused handshakes that still exit 0, and a timeout that shifts every later JMeter reply.
Load testing guides explain what a performance test measures and how to read the result. You'll find what response time, throughput, hits per second, percentiles and standard deviation mean, how stress, spike, volume and disaster recovery tests differ, which metrics to watch during a run, and practical fixes such as gzip on NGINX for a site that slows under load.
WebSocket load testing with k6 and JMeter, tested: 2,000 open sockets, refused handshakes that still exit 0, and a timeout that shifts every later JMeter reply.
k6 checks explained with real runs: 66% failed checks still exited 0, one check name can carry its own threshold, and a check that throws ends the iteration.
How to write a k6 stress test, with real runs: a ramping-vus test passed at 4x load with 0% errors, while an arrival-rate test at 2x capacity failed 50%.
Load balancer testing with real runs: one hung backend stopped all traffic for 30 s while k6 reported 0% errors. Six checks and how to run each one.
k6 report formats tested on v2.3.0: the end-of-test summary, JSON and CSV output, handleSummary, and the HTML dashboard export k6 skipped on a 19-second run.
k6 runs .ts files directly since v0.57, but it strips types without checking them. 11 TypeScript cases tested on k6 v2.3.0, and the decorators that hung it.
k6 scenarios explained with real runs: all 6 executors, startTime chaining, per-scenario thresholds, and a rate test that dropped 686 of 1,001 iterations.
hey load testing tutorial: install hey, read its report, send POSTs with tokens, and avoid the exit code 0 that hides failed runs. Tested on hey 0.1.5.
Performance testing interview questions with answers: test types, metrics, Little's Law, workload models, bottlenecks, and 4 scenarios, with real test numbers.
wrk load testing tutorial: install wrk, read its output, send POSTs with Lua, and avoid the 2-second timeout that hides slow responses. Tested on wrk 4.2.0.
Apache Bench tutorial: install ab, run a test, read every output line, send POSTs and headers, and avoid the -t 50,000 cap. Tested on ab 2.3 with real output.
Vegeta load testing step by step: install, attack at a fixed rate, write targets files, read reports, ramp up and gate CI. Tested on 12.13.0 with real output.
Artillery load testing step by step: install, write a YAML script, set arrival phases, read results, fail CI on a threshold. Tested on 2.0.34, 1,120 requests.
Gatling load testing step by step: set up Maven, write a Java simulation, inject users, read the report, fail the build on assertions. Tested on 3.16.0.
Locust load testing step by step: install, write a locustfile, run headless, read the stats and shape the load. Tested on Locust 2.47.0 with 1,026 requests.
Load test event-driven systems by injecting events at the producer and measuring at the consumer: end-to-end latency, consumer lag, DLQ rate, duplicates.
Size a database connection pool from the database's limits, then confirm it with a load test. Defaults and limits from HikariCP, PgBouncer and PostgreSQL docs.
Load test scripts break when APIs, auth, dynamic values or data change. How to detect drift early, keep scripts in git, and what AI can and cannot do.
Learn effective SaaS onboarding testing techniques to create load testing scenarios that enhance user experience and ensure smooth performance.
Learn how to configure OAuth2 load testing for APIs to ensure secure and accurate performance under stress. Improve your API testing process today.
IoT load testing for MQTT and CoAP backends: connections, keepalive, reconnect storms and retained messages, plus the tools that can generate that load.
Cloud or on-premise load testing? Answer five questions in order, then confirm with a two-run pilot. Links the startup, enterprise and monitoring guides.
Load testing multi-tenant SaaS: model the tenant mix, test noisy neighbours and per-tenant rate limits, check data isolation, and read results per tenant.
Design load tests for progressive web apps: what service workers hide from a load test, and how to test cold-cache visits, offline sync bursts and push sending.
How to keep checkout fast at peak load: measure each step, find the slow query or call, and test with a ramp that matches a sale. Includes a k6 sketch.
Explore scripted vs AI-driven load testing approaches. Learn strengths, limitations, and decision criteria for 2026 performance optimization.
Seven protocols load testers meet in 2026 (HTTP/1.1, HTTP/2, HTTP/3, WebSocket, gRPC, MQTT, SQL), what a test measures for each, and which tools support them.
How to find memory leaks in a load test: hold a steady load for hours, trend the heap left after each GC, diff two heap dumps, fix the reference and re-run.
How to load test a video streaming platform: what to simulate, how to model a live-event audience, a k6 sketch, and how to read the results.
Endurance testing and soak testing are the same practice: normal load held for hours. What it catches, how long to run it, and how to read the trend.
Spike testing applies traffic suddenly instead of ramping. Why autoscaling and cold caches fail in that window, and why recovery is half the test.
Volume testing increases the data a system holds rather than the user count. What it finds, how to run one, and how to read the curve it produces.
Three ways to run k6 at scale: self-hosted k6 with the k6 Operator, Grafana Cloud k6, or a managed platform, with the cost and effort of each.
AI in automated load testing today: drafting scripts, summarising results and where it falls short, plus how to run automated load tests in CI with gates.
An SPA does its work after the initial HTML, so HTTP-level tests miss most of it. Test the API calls the app makes, weighted the way the app makes them.
A virtual user simulates one person's session, pauses included. How VUs differ from requests per second, and why think time decides the ratio.
Realistic e-commerce load testing: build the browse, search, cart and checkout mix from your funnel, give each shopper unique data and keep payments safe.
REST Assured is a Java library for functional API tests. Set up 6.2.0 with JUnit 5, run it against a public API, and see why it is no load tool.
An online API tester sends HTTP requests from a browser. See what it does well, where CORS, private networks and secrets limit it, and when to use curl or k6.
Concurrency testing finds races, deadlocks and lost updates when operations overlap. Runnable Python demos with fixes, and how it differs from load testing.
Concurrent, simultaneous and active users are three different numbers, and mixing them invalidates the test.
The hard part is realism: matching real user behaviour, data and think time.
Soak testing finds leaks that a short run cannot, and spike testing finds recovery behaviour. Pick the type from the risk you are trying to retire.
Enterprise testing is dominated by integration and data, not by writing more unit tests.
The biggest wins are usually images, requests and caching, in that order.
A baseline turns future runs into comparisons instead of isolated numbers. Capture it on a stable build under representative load, then leave it alone.
The recurring obstacles are environment parity, test data and interpreting results. Most of them are planning problems rather than tooling problems.
Most lessons are about realism: data, think time and environment parity. A result nobody acts on is the same as not testing.
Backend metrics can look healthy while the page users see is still slow. Measure on a real device profile. Desktop numbers flatter almost every site.
The performance testing metrics worth tracking: response time percentiles, throughput, error rate, concurrency, and CPU, memory, disk, network and DB load.
Users judge speed in the first couple of seconds, and most sites lose them there. Measure before assuming; the obvious culprit is often not the cause.
The 90th percentile is the value 90% of measurements stay at or under. How to calculate p90, p95 and p99, with a worked example, and why they beat the average.
Standard deviation in performance testing: how far response times spread around the mean, how to calculate it, what counts as high and why to pair it with p95.
A recovery plan that has never been executed is an assumption, not a plan. Test the restore, not just the backup; backups fail silently at restore time.
Stress testing pushes past expected load to find the breaking point and the failure mode. How the system recovers matters as much as where it broke.
A campaign delivers its traffic in minutes, which is a spike rather than a load curve.
Why a GET or POST request returns 500 Internal Server Error: a body the server cannot parse, missing headers or cookies, exhausted pools, and how to debug it.
gzip on NGINX is a few lines of config and usually the cheapest bandwidth win available.
Decide what you are measuring and why before configuring anything. Choose the metrics up front, or you will report whatever looks best afterwards.
Combine a large HTTP load with a small number of real browser sessions. Watch client-side metrics, since the server can be fast while the page is not.
Throughput is work completed per unit of time: requests per second = completed requests / test seconds. Units, formula and how to measure it in JMeter and k6.
Response time testing explained: what response time is, how to measure it, why p95 beats the average, and what a good response time is.
Don’t miss out on the latest testing tips and tricks, tools and news related to software testing.
Already +20,000 members in the list.
Load test websites and APIs from 25 cloud regions, monitor page speed and uptime, and get AI analysis that explains your results in plain English.