-
Notifications
You must be signed in to change notification settings - Fork 0
Examples
This section provides various examples demonstrating how to use the iCanLoadJS Performance Testing Module for different scenarios and configurations.
Perform a basic performance test with default settings:
const icanloadjs = require('icanloadjs');
const url = 'https://example.com/api';
const numRequests = 100;
const numVirtualUsers = 5;
icanloadjs.runIcan(url, 'GET', numRequests, numVirtualUsers);Customize your performance test by adjusting parameters and thresholds:
const icanloadjs = require('icanloadjs');
const url = 'https://example.com/api';
const numRequests = 200;
const numVirtualUsers = 10;
const data = { key: 'value' };
const thresholds = {
maxFailedChecks: 10,
// Add more thresholds as needed
};
icanloadjs.runIcan(url, 'POST', numRequests, numVirtualUsers, data, thresholds);Run a performance test with multiple virtual users:
const icanloadjs = require('icanloadjs');
const url = 'https://example.com/api';
const numRequests = 50;
const numVirtualUsers = 3;
icanloadjs.runIcan(url, 'GET', numRequests, numVirtualUsers);Set additional thresholds for response times:
const icanloadjs = require('icanloadjs');
const url = 'https://example.com/api';
const numRequests = 100;
const numVirtualUsers = 5;
const thresholds = {
maxFailedChecks: 5,
maxResponseTime: 1000, // Maximum allowed response time in milliseconds
};
icanloadjs.runIcan(url, 'GET', numRequests, numVirtualUsers, thresholds);Feel free to explore and modify these examples based on your specific testing scenarios and requirements.
//Contoh Basic Auth
const icanloadjs = require('icanloadjs');
// Contoh URL yang akan diuji
const urlToTest = 'https://fakestoreapi.com/auth/login';
const method = 'POST';
// Menjalankan uji kinerja dengan otentikasi dasar
const numRequests = 1;
const numVirtualUsers = 2;
const auth = {
type: 'basic',
username: 'mor_2314',
password: '83r5^_',
};
icanloadjs.runIcan(urlToTest, method, numRequests, numVirtualUsers, auth);const icanloadjs = require('icanloadjs');
const { sleepIcan } = require('icanloadjs');
const urlToTest = 'https://jsonplaceholder.typicode.com/posts';
const method = 'GET';
const numRequests = 10;
sleepIcan(50000); // Sleep for 5 seconds
const numVirtualUsers = 10;
const thresholds = {
maxFailedChecks: 2,
http_req_failed: 0.01, // 1% failure rate
http_req_duration: 200, // 95% of requests below 200ms
// ... other thresholds
};
icanloadjs.runIcan(urlToTest, method, numRequests, numVirtualUsers, thresholds);const icanloadjs = require('icanloadjs');
const urlToTest = 'https://fakestoreapi.com/products';
const method = 'GET';
const numRequests = 1000;
const numVirtualUsers = 100;
const thresholds = {
maxFailedChecks: 5,
http_req_failed: 0.02, // 2% failure rate allowed
http_req_duration: 500, // 95% of requests below 500ms
// ... other thresholds
};
const targetArrivalRate = 20; // Simulate a peak traffic scenario (20 requests per second)
icanloadjs.runIcanWithArrivalRate(urlToTest, method, numRequests,numVirtualUsers, targetArrivalRate, thresholds);const icanloadjs = require('icanloadjs');
const urlToTest = 'https://fakestoreapi.com/products';
const method = 'GET';
const numRequests = 500;
const numVirtualUsers = 50;
const thresholds = {
maxFailedChecks: 2,
http_req_failed: 0.01, // 1% failure rate allowed
http_req_duration: 300, // 95% of requests below 300ms
// ... other thresholds
};
const targetArrivalRate = 2; // Simulate normal daily traffic (2 requests per second)
icanloadjs.runIcanWithArrivalRate(urlToTest, method, numRequests, numVirtualUsers, targetArrivalRate, thresholds);const icanloadjs = require('icanloadjs');
const urlToTest = 'https://fakestoreapi.com/products';
const method = 'GET';
const numRequests = 10;
const numVirtualUsers = 20;
const thresholds = {
maxFailedChecks: 10,
http_req_failed: 0.03, // 3% failure rate allowed
http_req_duration: 10, // 95% of requests below 800ms
// ... other thresholds
};
const targetArrivalRate = 30; // Simulate fluctuating traffic for scalability testing (30 requests per second)
icanloadjs.runIcanWithArrivalRate(urlToTest, method, numRequests, targetArrivalRate, thresholds, numVirtualUsers);After exploring these examples, you can delve deeper into the Metrics and Thresholds sections to understand the metrics provided by the module and how to set thresholds for your tests.
iCanLoadJS Performance Testing Module
This documentation is part of the iCanLoadJS Performance Testing Module for conducting performance tests on HTTP endpoints. For more information, check out the official repository on GitHub.
Contributing
If you'd like to contribute to the development of iCanLoadJS, please see our Contribution Guidelines.
License
This project is licensed under the MIT License.
Maintainer
- Faris Kurnia (ModalQA)
Feel free to raise issues, submit pull requests, and contribute to the improvement of iCanLoadJS. We welcome your feedback and contributions!