Print summary report for K6 tests
- add a generic template to print summary of k6 test results
- remove container logs since its around 50 mb
Issue-ID: CPS-2215
Change-Id: I8971fc30b9dc8be2ed16eda6755d17a91f608b48
Signed-off-by: halil.cakal <halil.cakal@est.tech>
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Signed-off-by: halil.cakal <halil.cakal@est.tech>
diff --git a/k6-tests/ncmp/utils.js b/k6-tests/ncmp/utils.js
index 3b61b21..18a8940 100644
--- a/k6-tests/ncmp/utils.js
+++ b/k6-tests/ncmp/utils.js
@@ -39,3 +39,23 @@
export function getRandomCmHandleId() {
return 'ch-' + (Math.floor(Math.random() * TOTAL_CM_HANDLES) + 1);
}
+
+function removeBracketsAndQuotes(str) {
+ return str.replace(/\[|\]|"/g, '');
+}
+
+export function makeCustomSummaryReport(data, options) {
+ const moduleName = `${__ENV.K6_MODULE_NAME}`;
+ let body = ``;
+ for (const condition in options.thresholds) {
+ let limit = JSON.stringify(options.thresholds[condition])
+ limit = removeBracketsAndQuotes(limit)
+ let limitKey = limit.split(' ')[0]
+ const actual = Math.ceil(data.metrics[condition].values[limitKey])
+ const result = data.metrics[condition].thresholds[limit].ok ? 'PASS' : 'FAIL'
+ const row = `${moduleName}\t${condition}\t${limit}\t${actual}\t${result}\n`;
+ body += row;
+ }
+ return body;
+}
+