0.0.5 • Published 1 year ago

p2p-k6 v0.0.5

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

K6 testing

Yêu cầu

Cài đặt GitDocker & Docker-compose

Sử dụng

Bạn cần copy file example.config.js (trong thư mục scripts/config) và đổi tên thành config.js. Bạn có thể thay đổi các tùy chọn trong file config.js.

Mở Terminal (hoặc Command Prompt trên Window), chuyển đến thư mục này (k6)

cd stress-test/k6

Chạy InfluxDB + Grafana Docker containers bằng lệnh sau:

docker-compose up -d influxdb grafana

Bây giờ có thể chạy stress test bằng lệnh:

docker-compose run k6 run ./scripts/<FILE_NAME>.js

Cấu hình kịch bản test

Có thể cấu hình kịch bản test trong file config.js.

Ví dụ:

stages: [
    { duration: '10s', target: 100 }, // below normal load
    { duration: '1m', target: 100 },
    { duration: '10s', target: 1400 }, // spike to 1400 users
    { duration: '3m', target: 1400 }, // stay at 1400 for 3 minutes
    { duration: '10s', target: 100 }, // scale down. Recovery stage.
    { duration: '2m', target: 100 },
    { duration: '10s', target: 0 },
  ]

Ghi chú:

  • duration: thời gian
  • target: số lượng user ảo (Virtual User)
  • VUs: Số lượng Vus đồng thời

Kịch bản test trên bắt đầu với khoảng thời gian 1 phút và 100 user ảo, tăng đột biến nhanh đến 1400 user ảo duy trì trong 3 phút, sau đó trở lại 100 user ảo để kiểm tra khả năng phục hồi của server.

Xem kết quả test

Truy cập http://localhost:3000 (đường dẫn của Grafana) từ trình duyệt.

Trên thanh menu bên trái, chọn Dashboards >> Manage >> chọn k6 Load Testing Results.

Bạn nên chọn thời gian bắt đầu và kết thúc test (Absolute time range) ở góc trên bên phải để xem kết quả chính xác hơn.


Bạn có thể thay đổi cấu hình cho Grafana trong file docker-compose.yml

grafana:
    ...
    ports:
      - "3088:3000"

Test scripts

I. POST /api/invoice

Thực hiện việc gửi Invoice API về team-server

Short script:

docker-compose run k6 run ./scripts/addInvoicesAPIStressTest.js -e BASE_URL=testURL -e ACCESS_TOKEN=token

Kịch bản test trên bắt đầu với 5000 invoice một lúc sau đó tắt và kết nối lại database để kiểm tra số lượng invoice có thể đợi ở Queues và insert đầy đủ vào database

Environment variables

Tham khảo

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago

0.0.0

1 year ago