feat: add k6 load testing suite, NRQL query library, and CLAUDE.md
Add comprehensive load testing infrastructure: - k6 auth-dashboard flow (login → profile → dashboard KPIs → widgets → refresh → logout) - k6 CRUD flow (units, vendors, journal entries, payments, reports) - Environment configs with staging/production/local thresholds - Parameterized user pool CSV matching app roles - New Relic NRQL query library (25+ queries for perf analysis) - Empty baseline.json structure for all tested endpoints - CLAUDE.md documenting full stack, auth, route map, and conventions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
53
load-tests/config/environments.json
Normal file
53
load-tests/config/environments.json
Normal file
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"staging": {
|
||||
"baseUrl": "https://staging.hoaledgeriq.com",
|
||||
"stages": {
|
||||
"rampUp": 10,
|
||||
"steady": 25,
|
||||
"rampDown": 0
|
||||
},
|
||||
"thresholds": {
|
||||
"http_req_duration_p95": 2000,
|
||||
"login_p95": 1500,
|
||||
"dashboard_p95": 3000,
|
||||
"crud_write_p95": 2000,
|
||||
"crud_read_p95": 1500,
|
||||
"error_rate": 0.05
|
||||
},
|
||||
"notes": "Staging environment – smaller infra, relaxed thresholds"
|
||||
},
|
||||
"production": {
|
||||
"baseUrl": "https://app.hoaledgeriq.com",
|
||||
"stages": {
|
||||
"rampUp": 20,
|
||||
"steady": 50,
|
||||
"rampDown": 0
|
||||
},
|
||||
"thresholds": {
|
||||
"http_req_duration_p95": 1000,
|
||||
"login_p95": 800,
|
||||
"dashboard_p95": 1500,
|
||||
"crud_write_p95": 1000,
|
||||
"crud_read_p95": 800,
|
||||
"error_rate": 0.01
|
||||
},
|
||||
"notes": "Production thresholds – strict SLA targets"
|
||||
},
|
||||
"local": {
|
||||
"baseUrl": "http://localhost:3000",
|
||||
"stages": {
|
||||
"rampUp": 5,
|
||||
"steady": 10,
|
||||
"rampDown": 0
|
||||
},
|
||||
"thresholds": {
|
||||
"http_req_duration_p95": 3000,
|
||||
"login_p95": 2000,
|
||||
"dashboard_p95": 5000,
|
||||
"crud_write_p95": 3000,
|
||||
"crud_read_p95": 2000,
|
||||
"error_rate": 0.10
|
||||
},
|
||||
"notes": "Local dev – generous thresholds for single-machine testing"
|
||||
}
|
||||
}
|
||||
11
load-tests/config/user-pool.csv
Normal file
11
load-tests/config/user-pool.csv
Normal file
@@ -0,0 +1,11 @@
|
||||
email,password,orgId,role
|
||||
loadtest-treasurer-01@hoaledgeriq.test,LoadTest!Pass01,org-uuid-placeholder-1,treasurer
|
||||
loadtest-treasurer-02@hoaledgeriq.test,LoadTest!Pass02,org-uuid-placeholder-1,treasurer
|
||||
loadtest-admin-01@hoaledgeriq.test,LoadTest!Pass03,org-uuid-placeholder-1,admin
|
||||
loadtest-admin-02@hoaledgeriq.test,LoadTest!Pass04,org-uuid-placeholder-2,admin
|
||||
loadtest-president-01@hoaledgeriq.test,LoadTest!Pass05,org-uuid-placeholder-2,president
|
||||
loadtest-manager-01@hoaledgeriq.test,LoadTest!Pass06,org-uuid-placeholder-2,manager
|
||||
loadtest-member-01@hoaledgeriq.test,LoadTest!Pass07,org-uuid-placeholder-1,member_at_large
|
||||
loadtest-viewer-01@hoaledgeriq.test,LoadTest!Pass08,org-uuid-placeholder-1,viewer
|
||||
loadtest-homeowner-01@hoaledgeriq.test,LoadTest!Pass09,org-uuid-placeholder-2,homeowner
|
||||
loadtest-homeowner-02@hoaledgeriq.test,LoadTest!Pass10,org-uuid-placeholder-2,homeowner
|
||||
|
Reference in New Issue
Block a user