Proyek ini bertujuan untuk melakukan pengujian beban menggunakan k6 load test pada dua API—POST dan PUT—yang mengakses layanan dari Reqres.in. Pengujian ini dilakukan untuk menilai kinerja dan keandalan dari metode POST dan PUT dalam menangani permintaan ke server Reqres.in.
-
Instalasi k6: Pastikan Anda telah menginstal k6. Jika belum, Anda dapat menginstalnya dengan mengikuti instruksi di situs resmi k6.
-
Setup Proyek:
- Buat folder untuk proyek pengujian Anda.
- Inisialisasi proyek dengan
npm init
jika Anda berencana menggunakan npm, atau cukup buat beberapa file script di dalam folder tersebut.
-
Buat File Skrip:
- Buat file JavaScript untuk setiap tipe permintaan. Misalnya,
post_test.js
untuk POST danput_test.js
untuk PUT danintegration.js untuk menangani pengujian integrasi antar komponen, dan
performance.js` untuk fokus pada pengujian performa keseluruhan sistem. Hasil dari semua pengujian ini disajikan dalam report.html, yang memberikan ringkasan komprehensif dan analisis dari berbagai tes yang dilakukan.
- Buat file JavaScript untuk setiap tipe permintaan. Misalnya,
-
Tulis Skrip Pengujian:
-
HTTP_POST (
http_post.js
):import http from 'k6/http'; import { check } from 'k6'; export default function postRequest(payload) { const params = { headers: { 'Content-Type': 'application/json', }, }; const res = http.post('https://reqres.in/api/users', JSON.stringify(payload), params); check(res, { 'response code was 201': (res) => res.status === 201, }); return res; }
-
HTTP_PUT (
http_put.js
):import http from 'k6/http'; import { check } from 'k6'; export default function putRequest(payload) { const params = { headers: { 'Content-Type': 'application/json', }, }; const res = http.put('https://reqres.in/api/users/2', JSON.stringify(payload), params); check(res, { 'response code was 200': (res) => res.status === 200, }); return res; }
-
- Eksekusi Skrip:
- Buka terminal.
- Jalankan tes dengan perintah k6 untuk masing-masing skrip:
k6 run http_post.js k6 run http_put.js k6 run integration.js k6 run performance.js
- Setelah menjalankan tes, k6 akan menampilkan hasil pengujian yang mencakup metrik seperti durasi permintaan, jumlah kesalahan, dll.
- Analisis hasil untuk memahami kinerja dan keandalan dari API POST dan PUT yang Anda uji.
- Berdasarkan hasil, Anda mungkin perlu menyesuaikan payload, parameter, atau konfigurasi k6.
- Ulangi pengujian untuk memastikan bahwa perubahan yang dilakukan memberikan hasil yang diharapkan.