@checkly/playwright-reporter 1.2.0 → 1.4.0

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/CHANGELOG.md CHANGED
@@ -4,6 +4,44 @@ All notable changes to `@checkly/playwright-reporter` will be documented in this
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
 
7
+ ## 1.4.0 (2026-02-03)
8
+
9
+ ### Added
10
+
11
+ - **Secret scrubbing** - Automatically scrub sensitive values from reports and trace files. Configure via the new `scrubbing` option:
12
+ - `envVars`: Array of environment variable names whose values should be scrubbed
13
+ - `autoDetect`: Auto-detect secrets from env vars matching common patterns (SECRET, KEY, TOKEN, PASSWORD, CREDENTIAL, AUTH, PRIVATE, API)
14
+ - `replacement`: Custom replacement string (default: `*********`)
15
+ - Set `scrubbing: false` to disable scrubbing entirely
16
+
17
+ ```typescript
18
+ createChecklyReporter({
19
+ scrubbing: {
20
+ envVars: ['API_KEY', 'DB_PASSWORD'],
21
+ autoDetect: true,
22
+ replacement: '[REDACTED]'
23
+ }
24
+ })
25
+ ```
26
+
27
+ - **Improved network and console data** - Network requests now include detailed fields (domain, resource type, headers, timing, transfer/resource bytes). Console logs include location information. Resource types are automatically derived from Content-Type headers when not available.
28
+
29
+ ### Changed
30
+
31
+ - **Playwright 1.58 support** - Now tested against Playwright 1.58.0.
32
+
33
+ ## 1.3.0 (2026-01-29)
34
+
35
+ ### Added
36
+
37
+ - **Real-time test progress** - See test results as they run with status icons, error details, and a summary, similar to Playwright's built-in `line` reporter. Disable with `showProgress: false` if using another reporter.
38
+
39
+ - **Summary table** - View a per-project breakdown of test results with pass/fail/flaky/skip counts and pass rates. Enable with `showSummaryTable: true`. Projects are color-coded for easy identification.
40
+
41
+ - **Automatic git detection** - Git information (branch, commit, author) is now automatically detected in CI environments and locally.
42
+
43
+ - **Test step code snippets** - Test steps now include source code context in the report. When viewing step details, you'll see the exact line of code that executed along with surrounding context and a pointer to the precise column location. This makes debugging failed steps easier by showing exactly what code ran.
44
+
7
45
  ## 1.2.0 (2026-01-21)
8
46
 
9
47
  ### Breaking Changes
package/dist/index.d.ts CHANGED
@@ -1,21 +1,52 @@
1
- import { JSONReportTestResult as JSONReportTestResult$1, Reporter } from '@playwright/test/reporter';
2
- export { JSONReport, JSONReportError, JSONReportSTDIOEntry, JSONReportSpec, JSONReportSuite, JSONReportTest, JSONReportTestStep } from '@playwright/test/reporter';
1
+ import { JSONReportTestResult as JSONReportTestResult$1, JSONReportTestStep as JSONReportTestStep$1, Reporter } from '@playwright/test/reporter';
2
+ export { JSONReport, JSONReportError, JSONReportSTDIOEntry, JSONReportSpec, JSONReportSuite, JSONReportTest, TestError } from '@playwright/test/reporter';
3
3
 
4
- interface ChecklyConsoleLog {
4
+ interface ChecklyStepData {
5
+ location?: {
6
+ file: string;
7
+ line: number;
8
+ column: number;
9
+ };
10
+ snippet?: string;
11
+ }
12
+ interface JSONReportTestStep extends JSONReportTestStep$1 {
13
+ _checkly?: ChecklyStepData;
14
+ steps?: JSONReportTestStep[];
15
+ }
16
+ interface ConsoleEntryLocation {
17
+ url: string;
18
+ columnNumber: number;
19
+ lineNumber: number;
20
+ }
21
+ interface ConsoleLog {
22
+ id: string;
5
23
  type: 'log' | 'warn' | 'error' | 'info' | 'debug';
6
- message: string;
24
+ text: string;
7
25
  timestamp: string;
26
+ location: ConsoleEntryLocation;
8
27
  }
9
- interface ChecklyNetworkRequest {
28
+ interface NetworkRequest {
29
+ id: string;
10
30
  url: string;
31
+ domain: string;
11
32
  method: string;
12
- status?: number;
13
- duration?: number;
14
- timestamp: string;
33
+ resourceType: string;
34
+ statusCode: number | null;
35
+ statusText: string;
36
+ start: number;
37
+ startedAt: number;
38
+ finishedAt: number | null;
39
+ time: number | null;
40
+ hasFinished: boolean;
41
+ hasSucceeded: boolean;
42
+ requestHeaders: Record<string, string>;
43
+ responseHeaders: Record<string, string>;
44
+ transferBytes: number | null;
45
+ resourceBytes: number | null;
15
46
  }
16
47
  interface ChecklyData {
17
- consoleLogs?: ChecklyConsoleLog[];
18
- networkRequests?: ChecklyNetworkRequest[];
48
+ console?: ConsoleLog[];
49
+ network?: NetworkRequest[];
19
50
  }
20
51
  interface JSONReportTestResult extends JSONReportTestResult$1 {
21
52
  _checkly?: ChecklyData;
@@ -25,6 +56,26 @@ declare class MissingCredentialsError extends Error {
25
56
  constructor(missing: string[]);
26
57
  }
27
58
 
59
+ /**
60
+ * Configuration for secret scrubbing in reports and traces.
61
+ */
62
+ interface ScrubbingOptions {
63
+ /**
64
+ * Environment variable names whose values should be scrubbed.
65
+ * The reporter looks up values at runtime from process.env.
66
+ */
67
+ envVars?: string[];
68
+ /**
69
+ * Auto-detect common secret patterns in environment variable names.
70
+ * Matches env vars containing: SECRET, KEY, TOKEN, PASSWORD, CREDENTIAL, AUTH, PRIVATE, API.
71
+ */
72
+ autoDetect?: boolean;
73
+ /**
74
+ * Custom replacement string for scrubbed values.
75
+ */
76
+ replacement?: string;
77
+ }
78
+
28
79
  /**
29
80
  * Configuration options for the Checkly Playwright Reporter.
30
81
  */
@@ -45,6 +96,28 @@ interface ChecklyReporterOptions {
45
96
  }) => string);
46
97
  /** Dry run mode - generate report but don't upload. */
47
98
  dryRun?: boolean;
99
+ /**
100
+ * Show real-time test progress in the terminal (like Playwright's "line" reporter).
101
+ * Set to false if you're using another reporter that prints progress.
102
+ * Defaults to true.
103
+ */
104
+ showProgress?: boolean;
105
+ /**
106
+ * When showProgress is enabled, also print individual test steps.
107
+ * Defaults to false.
108
+ */
109
+ printSteps?: boolean;
110
+ /**
111
+ * Show a summary table at the end of the test run with per-project breakdown.
112
+ * Defaults to true.
113
+ */
114
+ showSummaryTable?: boolean;
115
+ /**
116
+ * Configure secret scrubbing from reports and traces.
117
+ * Set to false to disable scrubbing entirely.
118
+ * @example { envVars: ['API_KEY'], autoDetect: true }
119
+ */
120
+ scrubbing?: false | ScrubbingOptions;
48
121
  }
49
122
  type ChecklyReporterClass = new (options?: ChecklyReporterOptions) => Reporter;
50
123
  declare const _default: ChecklyReporterClass;
@@ -65,4 +138,4 @@ declare const _default: ChecklyReporterClass;
65
138
  */
66
139
  declare function createChecklyReporter(options?: ChecklyReporterOptions): ['@checkly/playwright-reporter', ChecklyReporterOptions];
67
140
 
68
- export { type ChecklyConsoleLog, type ChecklyData, type ChecklyNetworkRequest, type ChecklyReporterOptions, type JSONReportTestResult, MissingCredentialsError, createChecklyReporter, _default as default };
141
+ export { type ChecklyData, type ChecklyReporterOptions, type ConsoleLog, type JSONReportTestResult, type JSONReportTestStep, MissingCredentialsError, type NetworkRequest, type ScrubbingOptions, createChecklyReporter, _default as default };