Agent Skills
› midudev/autoskills
› clerk-testing
clerk-testing
GitHub提供Clerk应用端到端测试指南,支持Playwright和Cypress。涵盖环境初始化、测试Token配置、状态持久化及最佳实践,确保认证流程测试高效安全。
触发场景
需要进行Clerk应用的E2E测试
询问Playwright或Cypress集成Clerk的方法
设置Clerk测试环境
安装
npx skills add midudev/autoskills --skill clerk-testing -g -y
SKILL.md
Frontmatter
{
"name": "clerk-testing",
"license": "MIT",
"metadata": {
"author": "clerk",
"version": "1.2.0"
},
"description": "E2E testing for Clerk apps. Use with Playwright or Cypress for auth flow tests.",
"allowed-tools": "WebFetch",
"compatibility": "Requires CLERK_TESTING_TOKEN from Clerk dashboard"
}
Testing
Decision Tree
| Framework | Documentation |
|---|---|
| Overview | https://clerk.com/docs/guides/development/testing/overview |
| Playwright | https://clerk.com/docs/guides/development/testing/playwright/overview |
| Cypress | https://clerk.com/docs/guides/development/testing/cypress/overview |
Mental Model
Test auth = isolated session state. Each test needs fresh auth context.
clerkSetup()initializes test environmentsetupClerkTestingToken()bypasses bot detectionstorageStatepersists auth between tests for speed
Workflow
- Identify test framework (Playwright or Cypress)
- WebFetch the appropriate URL from decision tree above
- Follow official setup instructions
- Use
pk_test_*andsk_test_*keys only
Best Practices
- Use
setupClerkTestingToken()before navigating to auth pages - Use test API keys:
pk_test_xxx,sk_test_xxx - Save auth state with
storageStatefor faster tests - Use
page.waitForSelector('[data-clerk-component]')for Clerk UI
Anti-Patterns
| 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 |
Framework-Specific
Playwright: Use globalSetup for auth state
Cypress: Add addClerkCommands({ Cypress, cy }) to support file
See Also
clerk-setup- Install Clerk before adding testsclerk-nextjs-patterns- Next.js patterns being tested- Demo Repo
版本历史
- 0ec7253 当前 2026-07-24 20:52


