| k6 | |
|---|---|
| Developer | Grafana Labs |
| Initial release | January 18, 2017; 8 years ago (2017-01-18) |
| Stable release | 1.3.0 / September 23, 2025; 2 months ago (2025-09-23) |
| Repository | github |
| Written in | JavaScript,Go |
| Operating system | Cross-platform |
| Type | Load testing |
| License | AGPL 3 |
| Website | k6 |
K6 is an open-source load testing tool developed by Grafana Labs.[1][2] It is designed to help developers and engineers test the performance and reliability of their systems, particularly APIs, microservices, and websites. K6 is both an HTTP load and functional test tool, written inGo and using thegoja embeddedJavaScript interpreter for test scripting purposes. Tests are written inECMAScript 6 using the Babel transpiler. There is support forHTTP/2,TLS, test assertions, ramp up and down, duration, number of iterations etc. Standard metrics include reports to standard out but can include collectors that report to time-series databases which can be visualized in real-time. There is aJenkins plugin that can be combined with thresholds (global pass/fail criteria).[3]
K6 was initially released by LoadImpact[5][6] in 2017. LoadImpact was later rebranded into k6 in 2020.[7] K6 was then acquired by Grafana Labs in 2021.[8] It has since become a popular tool for performance testing in the developer community.[9]
Grafana k6 1.0 was released on 2025-05-07 at GrafanaCON 2025.[10]
The below script executes a GET request on the Wikipedia homepage, checks whether the HTTP status code is 200 and if we are using the HTTP/2 protocol.[3]
importhttpfrom"k6/http";import{check}from"k6";exportdefaultfunction(){check(http.get("https://www.wikipedia.org/"),{"status is 200":(r)=>r.status==200,"protocol is HTTP/2":(r)=>r.proto=="HTTP/2.0",});}
The above test case can be run with the command$ k6 run http_2.js wherehttp_2.js is the filename in which the test case is saved in.
Thisprogramming-tool-related article is astub. You can help Wikipedia byexpanding it. |