2026-05-17 19:36:46 +07:00

1059 lines
23 KiB
JSON

{
"generatedAt": "2026-05-17T12:00:40.918Z",
"inputFile": "D:\\CodeSpace\\Final Project Gabungan - Broken Test\\walkguide-backend\\demo\\k6-tests\\k6-results\\auth-flow-local.ndjson",
"totalPoints": 25767,
"parseErrors": 0,
"keyMetrics": {
"throughput": {
"label": "Throughput (req/s)",
"description": "Total HTTP requests divided by test duration",
"value": "7.6 req/s"
},
"p95Latency": {
"label": "p95 Response Time (ms)",
"description": "95th percentile of all HTTP request durations",
"value": "4337.39 ms"
},
"errorRate": {
"label": "Error Rate (%)",
"description": "Percentage of non-2xx HTTP responses",
"value": "91.00%",
"passFail": "FAIL"
},
"dbQueryTime": {
"label": "Estimated DB Query Time (ms)",
"description": "p95 of write endpoints (location + obstacle) as DB proxy",
"value": null,
"note": "Actual DB time requires Spring Actuator or DB metrics"
},
"jvmHeap": {
"label": "JVM Heap Used (MB)",
"description": "From Spring Actuator metric, collected during test",
"value": null
}
},
"metrics": {
"http_reqs": {
"count": 1431,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 1431,
"min": "3.77",
"max": "19152.15",
"avg": "1553.35",
"p50": "920.68",
"p90": "3245.44",
"p95": "4337.39",
"p99": "13555.62"
},
"http_req_blocked": {
"count": 1431,
"min": "0.00",
"max": "39.96",
"avg": "2.64",
"p50": "1.96",
"p90": "4.81",
"p95": "5.76",
"p99": "15.03"
},
"http_req_connecting": {
"count": 1431,
"min": "0.00",
"max": "39.96",
"avg": "2.49",
"p50": "1.83",
"p90": "4.53",
"p95": "5.39",
"p99": "14.14"
},
"http_req_tls_handshaking": {
"count": 1431,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 1431,
"min": "0.00",
"max": "8.43",
"avg": "0.17",
"p50": "0.00",
"p90": "0.66",
"p95": "0.76",
"p99": "1.04"
},
"http_req_waiting": {
"count": 1431,
"min": "3.54",
"max": "19150.24",
"avg": "1552.04",
"p50": "919.20",
"p90": "3243.60",
"p95": "4336.00",
"p99": "13554.11"
},
"http_req_receiving": {
"count": 1431,
"min": "0.00",
"max": "27.79",
"avg": "1.14",
"p50": "0.92",
"p90": "2.10",
"p95": "2.67",
"p99": "6.56"
},
"http_req_failed": {
"count": 1431,
"min": "0.00",
"max": "1.00",
"avg": "0.91",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"walkguide_error_rate": {
"count": 1431,
"min": "0.00",
"max": "1.00",
"avg": "0.91",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"walkguide_endpoint_latency_ms": {
"count": 1431,
"min": "3.77",
"max": "19152.15",
"avg": "1553.35",
"p50": "920.68",
"p90": "3245.44",
"p95": "4337.39",
"p99": "13555.62"
},
"walkguide_successful_requests": {
"count": 125,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"data_sent": {
"count": 674,
"min": "86.00",
"max": "1647.00",
"avg": "570.06",
"p50": "526.00",
"p90": "532.00",
"p95": "532.00",
"p99": "1646.00"
},
"data_received": {
"count": 674,
"min": "0.00",
"max": "3787.00",
"avg": "1189.07",
"p50": "1073.00",
"p90": "1073.00",
"p95": "1073.00",
"p99": "3787.00"
},
"vus": {
"count": 192,
"min": "0.00",
"max": "30.00",
"avg": "19.75",
"p50": "22.00",
"p90": "30.00",
"p95": "30.00",
"p99": "30.00"
},
"vus_max": {
"count": 192,
"min": "30.00",
"max": "30.00",
"avg": "30.00",
"p50": "30.00",
"p90": "30.00",
"p95": "30.00",
"p99": "30.00"
},
"walkguide_auth_latency_ms": {
"count": 1370,
"min": "308.53",
"max": "19152.15",
"avg": "1561.80",
"p50": "924.49",
"p90": "3210.13",
"p95": "4337.39",
"p99": "14100.70"
},
"walkguide_failed_requests": {
"count": 1306,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"checks": {
"count": 4138,
"min": "0.00",
"max": "1.00",
"avg": "0.06",
"p50": "0.00",
"p90": "0.00",
"p95": "1.00",
"p99": "1.00"
},
"iteration_duration": {
"count": 667,
"min": "2595.13",
"max": "32409.24",
"avg": "5529.51",
"p50": "4168.27",
"p90": "8656.56",
"p95": "10792.33",
"p99": "28436.63"
},
"iterations": {
"count": 667,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
}
},
"endpoints": {
"ping": {
"http_reqs": {
"count": 1,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 1,
"min": "3.94",
"max": "3.94",
"avg": "3.94",
"p50": "3.94",
"p90": "3.94",
"p95": "3.94",
"p99": "3.94"
},
"http_req_blocked": {
"count": 1,
"min": "1.06",
"max": "1.06",
"avg": "1.06",
"p50": "1.06",
"p90": "1.06",
"p95": "1.06",
"p99": "1.06"
},
"http_req_connecting": {
"count": 1,
"min": "0.53",
"max": "0.53",
"avg": "0.53",
"p50": "0.53",
"p90": "0.53",
"p95": "0.53",
"p99": "0.53"
},
"http_req_tls_handshaking": {
"count": 1,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 1,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_waiting": {
"count": 1,
"min": "3.54",
"max": "3.54",
"avg": "3.54",
"p50": "3.54",
"p90": "3.54",
"p95": "3.54",
"p99": "3.54"
},
"http_req_receiving": {
"count": 1,
"min": "0.39",
"max": "0.39",
"avg": "0.39",
"p50": "0.39",
"p90": "0.39",
"p95": "0.39",
"p99": "0.39"
},
"http_req_failed": {
"count": 1,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"walkguide_endpoint_latency_ms": {
"count": 1,
"min": "3.94",
"max": "3.94",
"avg": "3.94",
"p50": "3.94",
"p90": "3.94",
"p95": "3.94",
"p99": "3.94"
}
},
"register": {
"http_reqs": {
"count": 671,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 671,
"min": "308.53",
"max": "19152.15",
"avg": "1699.42",
"p50": "814.48",
"p90": "3232.04",
"p95": "7210.31",
"p99": "15759.89"
},
"http_req_blocked": {
"count": 671,
"min": "0.00",
"max": "29.87",
"avg": "2.71",
"p50": "2.06",
"p90": "4.88",
"p95": "5.72",
"p99": "13.94"
},
"http_req_connecting": {
"count": 671,
"min": "0.00",
"max": "29.87",
"avg": "2.56",
"p50": "1.94",
"p90": "4.53",
"p95": "5.39",
"p99": "13.58"
},
"http_req_tls_handshaking": {
"count": 671,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 671,
"min": "0.00",
"max": "1.70",
"avg": "0.17",
"p50": "0.00",
"p90": "0.71",
"p95": "0.78",
"p99": "1.05"
},
"http_req_waiting": {
"count": 671,
"min": "308.53",
"max": "19150.24",
"avg": "1697.99",
"p50": "813.26",
"p90": "3231.04",
"p95": "7208.52",
"p99": "15759.29"
},
"http_req_receiving": {
"count": 671,
"min": "0.00",
"max": "27.79",
"avg": "1.25",
"p50": "0.94",
"p90": "2.36",
"p95": "3.05",
"p99": "8.25"
},
"http_req_failed": {
"count": 671,
"min": "0.00",
"max": "1.00",
"avg": "0.95",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"walkguide_endpoint_latency_ms": {
"count": 671,
"min": "308.53",
"max": "19152.15",
"avg": "1699.42",
"p50": "814.48",
"p90": "3232.04",
"p95": "7210.31",
"p99": "15759.89"
}
},
"login": {
"http_reqs": {
"count": 669,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 669,
"min": "411.64",
"max": "6717.96",
"avg": "1388.84",
"p50": "997.54",
"p90": "2961.83",
"p95": "3959.58",
"p99": "5613.18"
},
"http_req_blocked": {
"count": 669,
"min": "0.00",
"max": "39.96",
"avg": "2.81",
"p50": "2.09",
"p90": "4.83",
"p95": "6.39",
"p99": "16.99"
},
"http_req_connecting": {
"count": 669,
"min": "0.00",
"max": "39.96",
"avg": "2.66",
"p50": "1.96",
"p90": "4.58",
"p95": "5.91",
"p99": "16.99"
},
"http_req_tls_handshaking": {
"count": 669,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 669,
"min": "0.00",
"max": "8.43",
"avg": "0.17",
"p50": "0.00",
"p90": "0.66",
"p95": "0.75",
"p99": "1.03"
},
"http_req_waiting": {
"count": 669,
"min": "410.25",
"max": "6716.65",
"avg": "1387.60",
"p50": "997.48",
"p90": "2961.42",
"p95": "3957.44",
"p99": "5611.73"
},
"http_req_receiving": {
"count": 669,
"min": "0.00",
"max": "18.04",
"avg": "1.07",
"p50": "0.91",
"p90": "2.00",
"p95": "2.44",
"p99": "4.00"
},
"http_req_failed": {
"count": 669,
"min": "0.00",
"max": "1.00",
"avg": "0.95",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"walkguide_endpoint_latency_ms": {
"count": 669,
"min": "411.64",
"max": "6717.96",
"avg": "1388.84",
"p50": "997.54",
"p90": "2961.83",
"p95": "3959.58",
"p99": "5613.18"
}
},
"refresh_token": {
"http_reqs": {
"count": 30,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 30,
"min": "559.46",
"max": "4742.54",
"avg": "2340.89",
"p50": "2171.89",
"p90": "4333.05",
"p95": "4381.74",
"p99": "4742.54"
},
"http_req_blocked": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_connecting": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_tls_handshaking": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 30,
"min": "0.00",
"max": "1.03",
"avg": "0.03",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "1.03"
},
"http_req_waiting": {
"count": 30,
"min": "557.32",
"max": "4741.60",
"avg": "2339.94",
"p50": "2171.89",
"p90": "4331.36",
"p95": "4380.32",
"p99": "4741.60"
},
"http_req_receiving": {
"count": 30,
"min": "0.00",
"max": "3.02",
"avg": "0.92",
"p50": "0.94",
"p90": "1.70",
"p95": "2.17",
"p99": "3.02"
},
"http_req_failed": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"walkguide_endpoint_latency_ms": {
"count": 30,
"min": "559.46",
"max": "4742.54",
"avg": "2340.89",
"p50": "2171.89",
"p90": "4333.05",
"p95": "4381.74",
"p99": "4742.54"
}
},
"fcm_token": {
"http_reqs": {
"count": 30,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 30,
"min": "3.77",
"max": "182.63",
"avg": "23.79",
"p50": "16.47",
"p90": "30.21",
"p95": "49.51",
"p99": "182.63"
},
"http_req_blocked": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_connecting": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_tls_handshaking": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 30,
"min": "0.00",
"max": "1.05",
"avg": "0.05",
"p50": "0.00",
"p90": "0.00",
"p95": "0.43",
"p99": "1.05"
},
"http_req_waiting": {
"count": 30,
"min": "3.77",
"max": "180.33",
"avg": "23.08",
"p50": "16.07",
"p90": "29.33",
"p95": "49.51",
"p99": "180.33"
},
"http_req_receiving": {
"count": 30,
"min": "0.00",
"max": "2.30",
"avg": "0.66",
"p50": "0.56",
"p90": "1.56",
"p95": "1.75",
"p99": "2.30"
},
"http_req_failed": {
"count": 30,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"walkguide_endpoint_latency_ms": {
"count": 30,
"min": "3.77",
"max": "182.63",
"avg": "23.79",
"p50": "16.47",
"p90": "30.21",
"p95": "49.51",
"p99": "182.63"
}
},
"logout": {
"http_reqs": {
"count": 30,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"http_req_duration": {
"count": 30,
"min": "872.57",
"max": "5408.53",
"avg": "2748.74",
"p50": "2337.34",
"p90": "4276.35",
"p95": "4722.46",
"p99": "5408.53"
},
"http_req_blocked": {
"count": 30,
"min": "0.51",
"max": "5.50",
"avg": "2.64",
"p50": "2.60",
"p90": "4.51",
"p95": "5.47",
"p99": "5.50"
},
"http_req_connecting": {
"count": 30,
"min": "0.51",
"max": "5.00",
"avg": "2.47",
"p50": "2.60",
"p90": "4.40",
"p95": "4.86",
"p99": "5.00"
},
"http_req_tls_handshaking": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"http_req_sending": {
"count": 30,
"min": "0.00",
"max": "1.00",
"avg": "0.14",
"p50": "0.00",
"p90": "0.64",
"p95": "0.65",
"p99": "1.00"
},
"http_req_waiting": {
"count": 30,
"min": "870.26",
"max": "5407.53",
"avg": "2747.49",
"p50": "2335.74",
"p90": "4276.35",
"p95": "4722.09",
"p99": "5407.53"
},
"http_req_receiving": {
"count": 30,
"min": "0.00",
"max": "2.21",
"avg": "1.10",
"p50": "1.16",
"p90": "1.65",
"p95": "2.01",
"p99": "2.21"
},
"http_req_failed": {
"count": 30,
"min": "0.00",
"max": "0.00",
"avg": "0.00",
"p50": "0.00",
"p90": "0.00",
"p95": "0.00",
"p99": "0.00"
},
"walkguide_endpoint_latency_ms": {
"count": 30,
"min": "872.57",
"max": "5408.53",
"avg": "2748.74",
"p50": "2337.34",
"p90": "4276.35",
"p95": "4722.46",
"p99": "5408.53"
}
},
"unknown": {
"walkguide_error_rate": {
"count": 1431,
"min": "0.00",
"max": "1.00",
"avg": "0.91",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"walkguide_successful_requests": {
"count": 125,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"data_sent": {
"count": 674,
"min": "86.00",
"max": "1647.00",
"avg": "570.06",
"p50": "526.00",
"p90": "532.00",
"p95": "532.00",
"p99": "1646.00"
},
"data_received": {
"count": 674,
"min": "0.00",
"max": "3787.00",
"avg": "1189.07",
"p50": "1073.00",
"p90": "1073.00",
"p95": "1073.00",
"p99": "3787.00"
},
"vus": {
"count": 192,
"min": "0.00",
"max": "30.00",
"avg": "19.75",
"p50": "22.00",
"p90": "30.00",
"p95": "30.00",
"p99": "30.00"
},
"vus_max": {
"count": 192,
"min": "30.00",
"max": "30.00",
"avg": "30.00",
"p50": "30.00",
"p90": "30.00",
"p95": "30.00",
"p99": "30.00"
},
"walkguide_auth_latency_ms": {
"count": 1370,
"min": "308.53",
"max": "19152.15",
"avg": "1561.80",
"p50": "924.49",
"p90": "3210.13",
"p95": "4337.39",
"p99": "14100.70"
},
"walkguide_failed_requests": {
"count": 1306,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
},
"checks": {
"count": 4138,
"min": "0.00",
"max": "1.00",
"avg": "0.06",
"p50": "0.00",
"p90": "0.00",
"p95": "1.00",
"p99": "1.00"
},
"iteration_duration": {
"count": 667,
"min": "2595.13",
"max": "32409.24",
"avg": "5529.51",
"p50": "4168.27",
"p90": "8656.56",
"p95": "10792.33",
"p99": "28436.63"
},
"iterations": {
"count": 667,
"min": "1.00",
"max": "1.00",
"avg": "1.00",
"p50": "1.00",
"p90": "1.00",
"p95": "1.00",
"p99": "1.00"
}
}
},
"walkguideMetrics": {
"authLatency": {
"p95": "4337.39 ms",
"p99": "14100.70 ms",
"avg": "1561.80 ms"
},
"locationLatency": null,
"obstacleLatency": null,
"sosLatency": null,
"notifLatency": null,
"timelineLatency": null,
"pairingLatency": null
},
"thresholdResults": [
{
"name": "p95 overall < 500ms",
"metric": "http_req_duration",
"threshold": "500 ms",
"actual": "4337.39 ms",
"result": "❌ FAIL"
},
{
"name": "error rate < 1%",
"metric": "http_req_failed",
"threshold": "0.01 rate",
"actual": "0.91 rate",
"result": "❌ FAIL"
},
{
"name": "SOS p95 < 200ms",
"metric": "walkguide_sos_latency_ms",
"stat": "p95",
"threshold": 200,
"unit": "ms",
"operator": "<",
"actual": "N/A",
"result": "SKIP"
},
{
"name": "Location p95 < 300ms",
"metric": "walkguide_location_latency_ms",
"stat": "p95",
"threshold": 300,
"unit": "ms",
"operator": "<",
"actual": "N/A",
"result": "SKIP"
},
{
"name": "Obstacle p95 < 400ms",
"metric": "walkguide_obstacle_latency_ms",
"stat": "p95",
"threshold": 400,
"unit": "ms",
"operator": "<",
"actual": "N/A",
"result": "SKIP"
},
{
"name": "Auth p95 < 800ms",
"metric": "walkguide_auth_latency_ms",
"threshold": "800 ms",
"actual": "4337.39 ms",
"result": "❌ FAIL"
},
{
"name": "Timeline p95 < 1000ms",
"metric": "walkguide_timeline_latency_ms",
"stat": "p95",
"threshold": 1000,
"unit": "ms",
"operator": "<",
"actual": "N/A",
"result": "SKIP"
},
{
"name": "Notification p95 < 500ms",
"metric": "walkguide_notif_latency_ms",
"stat": "p95",
"threshold": 500,
"unit": "ms",
"operator": "<",
"actual": "N/A",
"result": "SKIP"
}
]
}