clerk-testing by clerk/skills
npx skills add https://github.com/clerk/skills --skill clerk-testing测试身份验证 = 隔离的会话状态。每个测试都需要全新的身份验证上下文。
clerkSetup() 初始化测试环境setupClerkTestingToken() 绕过机器人检测storageState 在测试之间持久化身份验证状态以提升速度广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
pk_test_* 和 sk_test_* 密钥setupClerkTestingToken()pk_test_xxx, sk_test_xxxstorageState 保存身份验证状态以加速测试page.waitForSelector('[data-clerk-component]') 等待 Clerk UI| 模式 | 问题 | 修复方法 |
|---|---|---|
| 在测试中使用生产密钥 | 安全风险 | 使用 pk_test_* 密钥 |
未使用 setupClerkTestingToken() | 身份验证失败 | 在导航前调用 |
| 每次测试都基于 UI 登录 | 测试缓慢 | 使用 storageState |
Playwright : 使用 globalSetup 来管理身份验证状态 Cypress : 在支持文件中添加 addClerkCommands({ Cypress, cy })
每周安装量
1.7K
仓库
GitHub 星标数
22
首次出现
2026年1月30日
安全审计
安装于
codex1.5K
opencode1.5K
gemini-cli1.4K
github-copilot1.4K
amp1.4K
kimi-cli1.4K
Test auth = isolated session state. Each test needs fresh auth context.
clerkSetup() initializes test environmentsetupClerkTestingToken() bypasses bot detectionstorageState persists auth between tests for speedpk_test_* and sk_test_* keys onlysetupClerkTestingToken() before navigating to auth pagespk_test_xxx, sk_test_xxxstorageState for faster testspage.waitForSelector('[data-clerk-component]') for Clerk UI| Pattern | Problem | Fix |
|---|---|---|
| Production keys in tests | Security risk | Use pk_test_* keys |
No setupClerkTestingToken() | Auth fails | Call before navigation |
| UI-based sign-in every test | Slow tests | Use storageState |
Playwright : Use globalSetup for auth state Cypress : Add addClerkCommands({ Cypress, cy }) to support file
Weekly Installs
1.7K
Repository
GitHub Stars
22
First Seen
Jan 30, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
codex1.5K
opencode1.5K
gemini-cli1.4K
github-copilot1.4K
amp1.4K
kimi-cli1.4K
99,500 周安装