wp-test-analyzer
// Analyze WordPress theme PHP files to extract testable elements for E2E test generation.
$ git log --oneline --stat
stars:194
forks:37
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namewp-test-analyzer
descriptionAnalyze WordPress theme PHP files to extract testable elements for E2E test generation.
WordPress Test Analyzer Skill
Analyze WordPress theme PHP files to extract testable elements for E2E test generation.
Usage
Invoke this skill when you need to analyze a WordPress theme for E2E testing:
- "Analyze the theme at /path/to/theme for testable elements"
- "Generate test cases for this WordPress theme"
- "What should I test in this WordPress site?"
Arguments
theme_path(required): Path to the WordPress theme directory
Workflow
- Run the analyzer script on the theme directory
- Review the JSON output of testable elements
- Use the output to generate Playwright test files
Testable Elements Extracted
Forms
- Form action URLs and methods
- Input fields (name, type, required)
- Submit buttons
- Nonce fields (WordPress security)
- Success/error message patterns
Navigation
- Menu structures
- Internal links
- External links
- Anchor links
Dynamic Content
- WP_Query loops
- Conditional displays (if/else)
- Post meta fields
- Custom post types
JavaScript Interactions
- onclick handlers
- Class toggles
- Data attributes
- Event listeners mentioned in PHP
WordPress-Specific
- Custom post types
- Meta boxes
- Theme options
- AJAX hooks
Example Output
{
"forms": [
{
"file": "page-contact.php",
"action": "POST to self",
"fields": [
{"name": "first_name", "type": "text", "required": true},
{"name": "email", "type": "email", "required": true},
{"name": "message", "type": "textarea", "required": true}
],
"nonce": "csr_contact_nonce",
"success_param": "?contact=success",
"error_param": "?contact=error"
}
],
"pages": [
{
"file": "index.php",
"template": "Home",
"sections": ["hero", "philosophy", "featured_works"],
"animations": ["initHomePage"]
}
],
"custom_post_types": ["property"],
"navigation": {
"primary": ["Home", "About", "Portfolio", "Contact"],
"footer": ["Privacy Policy", "Terms of Service"]
}
}
Running the Analyzer
python3 /root/.claude/skills/wp-test-analyzer/analyze.py /path/to/theme