Saya baru-baru ini mulai menulis tes pengujian beban menggunakan alat artileri. Saya biasa menulis tes untuk K6, jadi saya akan berbicara tentang keuntungan artileri dibandingkan K6, dan juga menulis skrip langkah demi langkah untuk menyiapkan proyek dari awal.
Langkah 1. Instalasi
npm install -g artillery@latest
Karena kami tidak hanya perlu melacak metrik, tetapi juga untuk memastikan bahwa server mengirimkan jawaban yang benar, kami juga memasang plugin untuk membandingkan hasil yang diharapkan dengan yang diterima:
npm i artillery-plugin-expect
Langkah 2. Buat konfigurasi
URL target, lingkungan
File konfigurasi pengujian beban adalah semua yang perlu kita lakukan untuk menjalankan pengujian:
config:
target: "https://yourapp.com/api"
environment , target url:
config:
target: "https://bestapp.com/api"
environments:
dev:
target: "https://bestapp.dev.com/api"
qa:
target: "https://bestapp.qa.com/api"
artillery . : duration β ; arrivalRate β , ; ramptTo β ; name - .
phases:
- duration: 30
arrivalRate: 1
rampTo: 20
name: test1
target url, , environment, .
:
plugins:
expect: {}
username password:
- get:
url: "/auth"
auth:
user: username
pass: password
header:
- post:
url: "/auth"
headers:
Authorization: βBasic secretKeyβ
3.
scenarios. , (GET, POST, PUT, DELETE .), url endpoint, body json, .
:
scenarios:
- name: "My first test"
flow:
- post:
url: "/endpoint1"
json:
id: value
expect:
- statusCode: 200
- contentType: json
- equals:
- respMessage: "OK"
equals , .
4.
:
artillery run yourConfig.yml
scripts package.json .
-e <env> - environment,
--quiet β ,
-o result.json β .
html
:
artillery report result.json
K6
Keuntungan utama artileri adalah pengaturan uji coba pertama yang sangat mudah. Tidak perlu menulis ulang tes dalam format yang ditentukan untuk K6, tidak perlu menulis file bat untuk menjalankan beberapa tes dan menyimpan hasilnya ke folder terpisah. Cukup dengan mengkonfigurasi satu file.
Artileri bekerja dengan node.js, sehingga skrip startup dapat dimasukkan ke package.json.
Anda dapat mengimpor variabel dari file cvs, mengambil variabel dari hasil.
Laporan dengan grafik dan grafik ditambahkan dalam satu perintah dan termasuk dalam versi gratis artileri.