Agent Skills
› NeverSight/learn-skills.dev
› browser-e2e-tester
browser-e2e-tester
GitHub用于运行基于浏览器的端到端测试,验证功能实现是否符合验收标准。支持Playwright、Puppeteer等框架,通过自动化流程执行用户流测试并生成详细报告与截图。
Trigger Scenarios
运行端到端测试
在浏览器中验证功能
验证用户操作流程
测试功能完成度
Install
npx skills add NeverSight/learn-skills.dev --skill browser-e2e-tester -g -y
SKILL.md
Frontmatter
{
"name": "browser-e2e-tester",
"layer": "verification-recovery",
"version": "1.0.0",
"category": "autonomous-coding",
"description": "Browser-based E2E testing for feature verification. Use when running end-to-end tests, validating features in browser, verifying user flows, or testing feature completion."
}
Browser E2E Tester
Runs browser-based end-to-end tests to verify feature implementation meets acceptance criteria.
Quick Start
Run Feature Tests
from scripts.e2e_tester import E2ETester
tester = E2ETester(project_dir)
result = await tester.test_feature("auth-001")
if result.passed:
print(f"Feature verified: {result.feature_id}")
else:
print(f"Failed: {result.failures}")
Run All Tests
results = await tester.test_all_features()
print(f"Passed: {results.passed}/{results.total}")
E2E Testing Workflow
┌─────────────────────────────────────────────────────────────┐
│ E2E TEST WORKFLOW │
├─────────────────────────────────────────────────────────────┤
│ │
│ 1. SETUP │
│ ├─ Load feature acceptance criteria │
│ ├─ Start test server (if needed) │
│ ├─ Initialize browser automation │
│ └─ Set test timeout │
│ │
│ 2. EXECUTE │
│ ├─ Navigate to feature entry point │
│ ├─ Execute test steps │
│ ├─ Capture screenshots on failure │
│ └─ Record test artifacts │
│ │
│ 3. VERIFY │
│ ├─ Check expected outcomes │
│ ├─ Validate UI state │
│ ├─ Verify API responses │
│ └─ Assert data persistence │
│ │
│ 4. REPORT │
│ ├─ Generate test report │
│ ├─ Update feature status │
│ └─ Store failure artifacts │
│ │
└─────────────────────────────────────────────────────────────┘
Test Result Structure
@dataclass
class TestResult:
feature_id: str
passed: bool
duration_ms: int
steps_executed: int
steps_passed: int
failures: list[str]
screenshots: list[Path]
artifacts: dict
Supported Test Frameworks
| Framework | Integration | Use Case |
|---|---|---|
| Playwright | Native | Modern web apps |
| Puppeteer | Adapter | Chrome-focused |
| Selenium | Adapter | Legacy browsers |
| Cypress | CLI | Component tests |
Feature Acceptance Format
{
"feature_id": "auth-001",
"acceptance_criteria": [
{
"step": "Navigate to login page",
"action": "goto",
"target": "/login"
},
{
"step": "Enter credentials",
"action": "fill",
"target": "#email",
"value": "test@example.com"
},
{
"step": "Submit form",
"action": "click",
"target": "button[type=submit]"
},
{
"step": "Verify redirect",
"action": "assert_url",
"expected": "/dashboard"
}
]
}
Integration Points
- coding-agent: Triggers tests after implementation
- progress-tracker: Reports test metrics
- error-recoverer: Handles test failures
- checkpoint-manager: Restores state on failure
References
references/E2E-PATTERNS.md- Test patternsreferences/BROWSER-AUTOMATION.md- Automation guide
Scripts
scripts/e2e_tester.py- Core testerscripts/browser_controller.py- Browser automationscripts/test_reporter.py- Report generationscripts/acceptance_parser.py- Criteria parser
Version History
- e0220ca Current 2026-07-05 23:08


