test-analytics-reporter 1.0.3 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/reporter.js +28 -0
- package/dist/reporter.js.map +1 -1
- package/package.json +2 -2
package/dist/reporter.js
CHANGED
|
@@ -55,6 +55,10 @@ class PlaywrightAnalyticsReporter {
|
|
|
55
55
|
let tracePath;
|
|
56
56
|
let traceDataBase64;
|
|
57
57
|
let traceFileName;
|
|
58
|
+
let imagePath;
|
|
59
|
+
let imageDataBase64;
|
|
60
|
+
let imageFileName;
|
|
61
|
+
let imageContentType;
|
|
58
62
|
if (result.attachments && result.attachments.length > 0) {
|
|
59
63
|
const traceAttachment = result.attachments.find((a) => a.name === 'trace' && a.path);
|
|
60
64
|
if (traceAttachment?.path) {
|
|
@@ -75,6 +79,26 @@ class PlaywrightAnalyticsReporter {
|
|
|
75
79
|
console.warn(`[Analytics] Could not read trace file: ${traceAttachment.path}`, traceReadError);
|
|
76
80
|
}
|
|
77
81
|
}
|
|
82
|
+
const imageAttachment = result.attachments.find((a) => a.path && (a.contentType?.startsWith('image/') || /\.(png|jpe?g|webp)$/i.test(a.path || '')));
|
|
83
|
+
if (imageAttachment?.path) {
|
|
84
|
+
imagePath = imageAttachment.path;
|
|
85
|
+
imageFileName = path_1.default.basename(imageAttachment.path);
|
|
86
|
+
imageContentType = imageAttachment.contentType || 'image/png';
|
|
87
|
+
try {
|
|
88
|
+
const stat = fs_1.default.statSync(imageAttachment.path);
|
|
89
|
+
// Keep payload size bounded for screenshots.
|
|
90
|
+
if (stat.size <= 3 * 1024 * 1024) {
|
|
91
|
+
imageDataBase64 = fs_1.default.readFileSync(imageAttachment.path).toString('base64');
|
|
92
|
+
console.log(`[Analytics] Captured image file (${Math.round(stat.size / 1024)} KB) for test: ${test.title}`);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
console.warn(`[Analytics] Image too large to upload (${Math.round(stat.size / 1024)} KB): ${imageAttachment.path}`);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
catch (imageReadError) {
|
|
99
|
+
console.warn(`[Analytics] Could not read image file: ${imageAttachment.path}`, imageReadError);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
78
102
|
}
|
|
79
103
|
else if (result.status === 'failed' && this.config.enabled) {
|
|
80
104
|
console.log(`[Analytics] No trace attachment found for failed test: ${test.title}. Enable traces in playwright.config.ts with: trace: 'retain-on-failure'`);
|
|
@@ -103,6 +127,10 @@ class PlaywrightAnalyticsReporter {
|
|
|
103
127
|
tracePath,
|
|
104
128
|
traceDataBase64,
|
|
105
129
|
traceFileName,
|
|
130
|
+
imagePath,
|
|
131
|
+
imageDataBase64,
|
|
132
|
+
imageFileName,
|
|
133
|
+
imageContentType,
|
|
106
134
|
};
|
|
107
135
|
this.testResults.push(testAnalyticsResult);
|
|
108
136
|
// Send batch if we've reached batch size
|
package/dist/reporter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reporter.js","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":";;;;;AACA,kDAA0B;AAC1B,+BAAoC;AACpC,4CAAoB;AACpB,gDAAwB;
|
|
1
|
+
{"version":3,"file":"reporter.js","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "test-analytics-reporter",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "Playwright test reporter for sending results to Test Analytics Dashboard",
|
|
5
5
|
"main": "dist/reporter.js",
|
|
6
6
|
"types": "dist/reporter.d.ts",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@playwright/test": "^1.40.0",
|
|
39
39
|
"axios": "^1.6.0",
|
|
40
|
-
"test-analytics-shared": "^1.
|
|
40
|
+
"test-analytics-shared": "^1.1.1",
|
|
41
41
|
"uuid": "^9.0.0"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|