用途:为 HubSpot 集成搭建 GitHub Actions CI/CD,实现单元测试、针对开发者测试账户的集成测试以及密钥管理。
主要能力:在每次 PR 上运行单元测试(无需 API 凭据);仅在 main 分支推送时运行集成测试,使用测试账户;通过密钥扫描防止令牌泄露;上传覆盖率报告为构建产物。
使用方式:前置条件为启用 Actions 的 GitHub 仓库、HubSpot 开发者测试账户令牌、带测试套件的 npm/pnpm 项目。工作流文件为 .github/workflows/hubspot-ci.yml,包含 unit-tests 与 integration-tests 两个作业,集成测试通过 env 注入 HUBSPOT_ACCESS_TOKEN 与 HUBSPOT_PORTAL_ID,并执行 HUBSPOT_TEST=true npm run test:integration,再用 curl 校验 HubSpot 连通性。密钥配置使用 gh secret set HUBSPOT_TEST_ACCESS_TOKEN --body "pat-na1-test-xxxxx"、gh secret set HUBSPOT_TEST_PORTAL_ID --body "12345678",生产部署用 gh secret set HUBSPOT_PROD_ACCESS_TOKEN --body "pat-na1-prod-xxxxx"。测试可用 vitest 编写,通过 describe.skipIf(!shouldRun) 控制是否运行,并在 afterAll 中清理创建的测试数据。密钥扫描作业用 grep 检测 pat- 令牌与 hapikey= 硬编码密钥。
适用场景:HubSpot 集成的持续集成、自动化测试与密钥安全防护。
限制:资料未提供具体收费、价格、平台支持范围与效果数据;集成测试依赖测试账户令牌,可能受速率限制影响,需设置 numberOfApiCallRetries: 3;令牌过期或重新生成会导致 401,需更新密钥;测试数据需自行清理以避免污染。