@checkly/playwright-reporter

中文文档
1.15.0发布于 2026/10/26Apache-2.0TypeScriptCommonJS近 30 天下载 3.2万

Checkly的独立 Playwright记者 - 兼容 Playwright 1.40-1.64+

中文使用文档
文档目录21 节
  1. 安装
  2. 快速启动
  3. 1. 获得全权证书
  4. 2. 配置剧作家
  5. 3. 设置环境变量
  6. 4. 运行测试
  7. 配置选项
  8. 环境变量
  9. 上传什么
  10. 偷窥秘密
  11. 模糊测试检测
  12. 本地运行( 无上传)
  13. 干运行模式
  14. CI/CD 一体化
  15. GitHub 动作
  16. GitLab CI 语录
  17. 多个记者
  18. 理解测试会话
  19. 警卫
  20. 文档
  21. 许可证

@ checkly/ playwright-reporter (帮助) @ info: whatsthis

Checkly的Playwright官方记者. 自动上传测试结果,截图,视频,和痕迹,以获得对端测试的能见度.

完全兼容 Playwright 的内置 JSON 记者 - 使用它作为临时替代,增加Checkly集成.

安装

npm install --save-dev @checkly/playwright-reporter

所需经费:

  • 节点20.19+或22.12+
  • 剧作家 >= 1.4.0.0
  • A 类 支票账户

快速启动

1. 获得全权证书

  1. 转到 账户设置 > 常规 查找您的账户ID
  2. 转到 用户设置 > API 密钥 创建 API 密钥

2. 配置剧作家

将记者添加到您的 playwright.config.ts数字 :

import { defineConfig } from '@playwright/test';
import { createChecklyReporter } from '@checkly/playwright-reporter';

export default defineConfig({
  reporter: [
    ['list'],
    createChecklyReporter(),
  ],
});

提示 : 使用 createChecklyReporter() 为配置选项提供全智能。 或者使用数组语法 : ['@checkly/playwright-reporter', { ... }]

3. 设置环境变量

export CHECKLY_API_KEY=your_api_key
export CHECKLY_ACCOUNT_ID=your_account_id

或者用内线通过他们:

CHECKLY_API_KEY=... CHECKLY_ACCOUNT_ID=... npx playwright test

4. 运行测试

npx playwright test

您可以在输出中看到会话 URL :

View test results: https://app.checklyhq.com/test-sessions/abc123

[...test execution...]

✓ Check the results: https://app.checklyhq.com/test-sessions/abc123

配置选项

import { createChecklyReporter } from '@checkly/playwright-reporter';

createChecklyReporter({
  outputDir: 'test-results',
  sessionName: 'My Test Suite',
  dryRun: false,
  verbose: false,
  showProgress: true,
  showSummaryTable: true,
})
选项类型默认说明
apiKeystringCHECKLY_API_KEY 环境 var检查 API 密钥
accountIdstringCHECKLY_ACCOUNT_ID 环境 var检查账户 ID
outputDirstring剧作家 outputDirJSON和ZIP资产目录
sessionNamestring | function自动生成自定义会话名称
dryRunbooleanfalse不上传而创建 ZIP
verbosebooleanfalse启用调试日志
showProgressbooleantrue在终端显示实时测试进度
printStepsbooleanfalse打印单个测试步骤( 要求) showProgress(中文(简体) )
showSummaryTablebooleantrue运行后显示每个项目的细分表
scrubbingobject | false见 偷窥秘密配置报告和痕迹的秘密擦拭
testCommandstring自动检测覆盖在 Ccheckly UI 中显示的测试命令
webVitalsbooleanfalse通过仪器浏览器上下文来收集核心网络维度(LCP,CLS,INP,FCP,TTFB,TTCT);结果出现在Checkly报告中. 在 Checkly 的跑道上运行时默认存在

输出文件 (写信给 outputDir:

  • checkly-report.json - JSON测试报告
  • checkly-report.zip - 有报告和资产的ZIP档案

环境变量

变量说明
CHECKLY_API_KEY您的 checkly API 密钥
CHECKLY_ACCOUNT_ID您的支票账户 ID
CHECKLY_REPORTER_VERBOSE设定为 true 详细调试输出
CHECKLY_REPORTER_DRY_RUN设定为 true 要跳过上传
CHECKLY_REPORTER_OUTPUT_DIR覆盖输出目录
CHECKLY_REPORTER_SHOW_SUMMARY_TABLE设定为 false 以隐藏总表
CHECKLY_REPORTER_WEB_VITALS设定为 false 以禁用 Core Web Virtuals 收藏( kill switch; 默认在 Checkly 的跑取器上使用 )
CHECKLY_TEST_COMMAND覆盖在 Ccheckly UI 中显示的测试命令

环境变量优先于配置中通过的选项.

上传什么

  • 测试结果和状况(通过/失败/故障)
  • 执行期限和时间
  • 截图(关于失败或明确捕获)
  • 录像
  • 剧作家追踪
  • 控制台日志和网络请求(取自痕迹)

偷窥秘密

记者在上传前会自动从JSON报告中去除敏感值,跟踪文件,附件和日志.

默认情况下,任何名称以 CHECKLY_SECRET_ 被擦干净。 您可以配置额外的擦除策略 :

createChecklyReporter({
  scrubbing: {
    envVars: ['DB_PASSWORD', 'STRIPE_KEY'],
    autoDetect: true,
    prefix: 'CHECKLY_SECRET_',
    replacement: '[REDACTED]',
  },
})
选项类型默认说明
envVarsstring[][]应去除运行时间值的环境可变名称
autoDetectbooleanfalseScrub env vars 匹配常见的秘密模式( SECRET, 关键, TOKEN, PASWORD, 认证, AUTH, Private, API)
prefixstring | false | null'CHECKLY_SECRET_'从这个前缀开始,将所有嵌入式 vars 全部清除. 设定为 false 或者说 '' 无法禁用
replacementstring'*********'自定义擦除器值的替换字符串
unscrubbableTraces'reject' | 'upload''reject'和无法完全抹去秘密的痕迹有什么关系 'reject' 把它从上传中留下, 'upload' 上传为记录, 包含秘密, 并登录警告

设定 scrubbing: false 完全禁用洗涤.

模糊测试检测

记者自动检测出片状测试:

  • 模糊测试: 初始失败但在重试后通过的测试
  • 有辱人格的地位: 当有片状测试但没有完全失败时设定
  • 总体状况数字 : passed 如果所有的测试最终通过, failed 否则

本地运行( 无上传)

对于本地开发而不上传到Checkly:

# Simply don't set CHECKLY_API_KEY or CHECKLY_ACCOUNT_ID
npx playwright test

发生什么了

  • 记者打印证书缺失并跳过上传
  • 测试正常运行
  • 与 outputDir 设置, 记者会写一个刷子 checkly-report.json 那边

为了得到 checkly-report.zip 本地, 使用 干线运行模式。 。 。 .

干运行模式

不上传而创建本地 JSON 和 ZIP 文件 :

createChecklyReporter({
  dryRun: true,
})

有条件的干跑( 无证书时会上传 ) :

createChecklyReporter({
  dryRun: !process.env.CHECKLY_API_KEY,
})

CI/CD 一体化

GitHub 动作

name: Playwright Tests
on: [push, pull_request]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: actions/setup-node@v4
        with:
          node-version: 20

      - name: Install dependencies
        run: npm ci

      - name: Install Playwright browsers
        run: npx playwright install --with-deps

      - name: Run Playwright tests
        env:
          CHECKLY_API_KEY: ${{ secrets.CHECKLY_API_KEY }}
          CHECKLY_ACCOUNT_ID: ${{ secrets.CHECKLY_ACCOUNT_ID }}
        run: npx playwright test

GitLab CI 语录

test:
  image: mcr.microsoft.com/playwright:v1.57.0-jammy
  stage: test
  script:
    - npm ci
    - npx playwright test
  variables:
    CHECKLY_API_KEY: $CHECKLY_API_KEY
    CHECKLY_ACCOUNT_ID: $CHECKLY_ACCOUNT_ID

设置变量 :

  1. 转到您的 GitLab 项目
  2. 导航到设置 > CI/CD > 变量
  3. 添加 CHECKLY_API_KEY (检查"任务变量")
  4. 添加 CHECKLY_ACCOUNT_ID (检查"任务变量")

多个记者

与其他剧作家记者合并:

import { createChecklyReporter } from '@checkly/playwright-reporter';

export default defineConfig({
  reporter: [
    createChecklyReporter(),
    ['html', { outputFolder: 'playwright-report' }],
    ['list'],
    ['junit', { outputFile: 'test-results/junit.xml' }],
  ],
});

理解测试会话

记者创建 成套测试会,而不是单个测试文件结果.

当你跑的时候 npx playwright test数字 :

  1. 一个测试会 创建, 以您的目录命名
  2. 一个测试结果 整个运行
  3. 所有资产一起上传 在一个 ZIP 文件内

福利:

  • 整个测试套间的综合视图
  • 高效存储
  • 跟踪总通过率/长期不及格率

警卫

总是使用环境变量作为证书. 从不将 API 密钥输入到版本控制 .

// DON'T DO THIS
createChecklyReporter({
  apiKey: 'chk_api_...',  // Hardcoded credentials!
})

// DO THIS
createChecklyReporter()  // Reads from environment

使用 偷窥秘密 特性,以确保敏感值不会泄露到上传的报告和痕迹中.

文档

详细文件,访问 checklyhq.com/docs/detect/测试/剧作家-记者。 。 。 .

许可证

Apache 2.0 (英语)

版本与发布记录

@checkly/playwright-reporter 共发布 99 个版本,首次发布于 2025/10/21;过去 12 个月发布了 87 个版本。

版本发布日期距今
1.15.0latest2026/10/2614 天前
1.15.0-pre-ea31d8d1pre2026/10/2614 天前
1.14.02026/10/1525 天前
1.13.22026/06/174 个月前
1.13.2-pre-54dde572026/06/174 个月前
1.13.12026/06/124 个月前

其他发布通道:alpha → 0.0.9-alpha,beta → 0.1.0-beta,legacy → 0.1.5,pre → 1.15.0-pre-ea31d8d1。

关于 @checkly/playwright-reporter 的常见问题

@checkly/playwright-reporter 是什么?

Checkly的独立 Playwright记者 - 兼容 Playwright 1.40-1.64+

如何安装 @checkly/playwright-reporter?

在项目目录运行 npm install @checkly/playwright-reporter,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@playwright/test(>=1.40.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@checkly/playwright-reporter 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@checkly/playwright-reporter 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@checkly/playwright-reporter 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^20.19.0 || >=22.12.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@checkly/playwright-reporter 可以商用吗?

@checkly/playwright-reporter 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@checkly/playwright-reporter 的下载量有多少?

根据 npm 官方下载统计,@checkly/playwright-reporter 在 2026/10/10 – 2026/11/08 这 30 天内被下载 32,101 次,日均约 1,070 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@checkly/playwright-reporter 还在维护吗?

最新版本 1.15.0 发布于 2026/10/26(14 天前);至今共发布 99 个版本,其中过去 12 个月发布了 87 个;首次发布于 2025/10/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。