K6 ابزاری اپنسورس برای تست پرفورمنس است که با استفاده از زبانهای برنامهنویسی Go و JavaScript توسعه داده شده است.
از جمله فیچرهای K6 میتوان به مدرن بودن، انعطافپذیری و کاربرپسندی این ابزار اپنسورس اشاره کرد که در ادامه تکتک این موارد را مورد بررسی قرار خواهیم داد:
- مدرن: K6 با زبانهای گو و جاوااسکریپت نوشته شده تا به سادگی بتوان آن را با فرایندهای توسعهٔ بهروز ادغام نمود.
- انعطافپذیر: K6 به منظور تست پِرفورمنس (عملکرد) و همچنین تست API طراحی شده است.
- کاربرپسند: اینترفیس کامندلاین (CLI) این ابزار بسیاری کاربرپسند بوده و دولوپرها به سادگی میتوانند کار با آن را شروع نمایند.
نمونه تست نوشته شده با K6 برای ریکوئستهای HTTP
به عنوان مثال، برای تست درخواستهای پروتکل HTTP داریم:
import http from "k6/http";
export default function() {
var url = "http://test.loadimpact.com/login";
var payload = JSON.stringify({ email: "aaa", password: "bbb" });
var params = { headers: { "Content-Type": "application/json" } }
http.post(url, payload, params);
};
همانطور که ملاحظه میشود، در تست فوق ریکوئستی از جنس POST به منظور برای تأیید دیتای یک کاربر جهت ورود به یک سرویس/سایت مورد بررسی قرار گرفته است.