PluginBench
Skill
Review
Audit score 70

testrail

alirezarezvani/claude-skills

Sync Playwright tests bidirectionally with TestRail test management.

What is testrail?

Automate test case synchronization between Playwright and TestRail. Import test cases as Playwright tests, push test results back to TestRail, create test runs, and maintain coverage alignment between your automation and test management system.

  • Import TestRail test cases and generate corresponding Playwright tests with case ID annotations
  • Push Playwright test results (pass/fail/skip) back to TestRail with error details
  • Create TestRail test runs and link Playwright tests via annotations
  • Sync status: compare TestRail cases against local Playwright tests and report coverage gaps
  • Update TestRail test cases with steps and expected results extracted from Playwright test code

How to install testrail

npx skills add https://github.com/alirezarezvani/claude-skills --skill testrail
Prerequisites
  • TESTRAIL_URL environment variable (e.g., https://your-instance.testrail.io)
  • TESTRAIL_USER environment variable (your TestRail email)
  • TESTRAIL_API_KEY environment variable (API key from TestRail account)
  • Playwright test project with test files
Claude Code
Cursor
Windsurf
Cline

How to use testrail

  1. 1.Set required environment variables: TESTRAIL_URL, TESTRAIL_USER, TESTRAIL_API_KEY
  2. 2.Run `/pw:testrail import --project <id> --suite <id>` to fetch test cases and generate Playwright tests
  3. 3.Add TestRail case ID annotations to Playwright tests: `test.info().annotations.push({ type: 'testrail', description: 'C12345' })`
  4. 4.Execute Playwright tests with JSON reporter: `npx playwright test --reporter=json > test-results.json`
  5. 5.Run `/pw:testrail push --run <id>` to upload test results to TestRail
  6. 6.Use `/pw:testrail status --project <id>` to check coverage and identify unlinked cases

Use cases

Good for
  • Generate Playwright tests from existing TestRail test cases to bootstrap automation
  • Report test execution results from CI/CD pipelines back to TestRail for centralized tracking
  • Identify unlinked test cases and automation gaps between TestRail and Playwright
  • Maintain test case documentation in sync when updating Playwright test logic
  • Create test runs in TestRail and populate them with results from automated test execution
Who it's for
  • QA engineers managing test cases in TestRail and automating with Playwright
  • Test automation leads coordinating between manual test plans and automated test suites
  • DevOps/CI teams pushing test results to centralized test management systems

testrail FAQ

How does the skill link Playwright tests to TestRail cases?

Each Playwright test includes a TestRail annotation with the case ID (e.g., C12345). This annotation is the bridge between the two systems and is used to map results and updates.

What test statuses are supported when pushing results?

Pass (status_id: 1), Fail (status_id: 5 with error message), and Skip (status_id: 2).

Can I update TestRail cases from my Playwright tests?

Yes, use `/pw:testrail update --case <id>` to extract steps and expected results from Playwright test code and push them back to TestRail.

What happens if environment variables are not set?

The skill will inform you how to configure TESTRAIL_URL, TESTRAIL_USER, and TESTRAIL_API_KEY and stop execution until they are set.

How do I identify test coverage gaps?

Run `/pw:testrail status --project <id>` to see how many TestRail cases have corresponding Playwright tests and which cases are unlinked.

Full instructions (SKILL.md)

Source of truth, from alirezarezvani/claude-skills.


name: "testrail" description: >- Sync tests with TestRail. Use when user mentions "testrail", "test management", "test cases", "test run", "sync test cases", "push results to testrail", or "import from testrail".

TestRail Integration

Bidirectional sync between Playwright tests and TestRail test management.

Prerequisites

Environment variables must be set:

  • TESTRAIL_URL — e.g., https://your-instance.testrail.io
  • TESTRAIL_USER — your email
  • TESTRAIL_API_KEY — API key from TestRail

If not set, inform the user how to configure them and stop.

Capabilities

1. Import Test Cases → Generate Playwright Tests

/pw:testrail import --project <id> --suite <id>

Steps:

  1. Call testrail_get_cases MCP tool to fetch test cases
  2. For each test case:
    • Read title, preconditions, steps, expected results
    • Map to a Playwright test using appropriate template
    • Include TestRail case ID as test annotation: test.info().annotations.push({ type: 'testrail', description: 'C12345' })
  3. Generate test files grouped by section
  4. Report: X cases imported, Y tests generated

2. Push Test Results → TestRail

/pw:testrail push --run <id>

Steps:

  1. Run Playwright tests with JSON reporter:
    npx playwright test --reporter=json > test-results.json
    
  2. Parse results: map each test to its TestRail case ID (from annotations)
  3. Call testrail_add_result MCP tool for each test:
    • Pass → status_id: 1
    • Fail → status_id: 5, include error message
    • Skip → status_id: 2
  4. Report: X results pushed, Y passed, Z failed

3. Create Test Run

/pw:testrail run --project <id> --name "Sprint 42 Regression"

Steps:

  1. Call testrail_add_run MCP tool
  2. Include all test case IDs found in Playwright test annotations
  3. Return run ID for result pushing

4. Sync Status

/pw:testrail status --project <id>

Steps:

  1. Fetch test cases from TestRail
  2. Scan local Playwright tests for TestRail annotations
  3. Report coverage:
    TestRail cases: 150
    Playwright tests with TestRail IDs: 120
    Unlinked TestRail cases: 30
    Playwright tests without TestRail IDs: 15
    

5. Update Test Cases in TestRail

/pw:testrail update --case <id>

Steps:

  1. Read the Playwright test for this case ID
  2. Extract steps and expected results from test code
  3. Call testrail_update_case MCP tool to update steps

MCP Tools Used

ToolWhen
testrail_get_projectsList available projects
testrail_get_suitesList suites in project
testrail_get_casesRead test cases
testrail_add_caseCreate new test case
testrail_update_caseUpdate existing case
testrail_add_runCreate test run
testrail_add_resultPush individual result
testrail_get_resultsRead historical results

Test Annotation Format

All Playwright tests linked to TestRail include:

test('should login successfully', async ({ page }) => {
  test.info().annotations.push({
    type: 'testrail',
    description: 'C12345',
  });
  // ... test code
});

This annotation is the bridge between Playwright and TestRail.

Output

  • Operation summary with counts
  • Any errors or unmatched cases
  • Link to TestRail run/results

Related skills

More from alirezarezvani/claude-skills and the wider catalog.

UIui-design-system logo

ui-design-system

alirezarezvani/claude-skills

UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use when creating design systems, generating design tokens, maintaining visual consistency, or facilitating design-dev collaboration and developer handoff.

910 installsAudited
UXux-researcher-designer logo

ux-researcher-designer

alirezarezvani/claude-skills

UX research and design toolkit for Senior UX Designer/Researcher including data-driven persona generation, journey mapping, usability testing frameworks, and research synthesis. Use when conducting user research, creating personas, mapping user journeys, planning usability tests, or validating designs.

825 installs
A1a11y-audit logo

a11y-audit

alirezarezvani/claude-skills

Accessibility audit skill for scanning, fixing, and verifying WCAG 2.2 Level A and AA compliance across React, Next.js, Vue, Angular, Svelte, and plain HTML codebases. Use when auditing accessibility, fixing a11y violations, checking color contrast, generating compliance reports, or integrating accessibility checks into CI/CD pipelines.

693 installsAudited
ADad-creative logo

ad-creative

alirezarezvani/claude-skills

When the user needs to generate, iterate, or scale ad creative for paid advertising. Use when they say 'write ad copy,' 'generate headlines,' 'create ad variations,' 'bulk creative,' 'iterate on ads,' 'ad copy validation,' 'RSA headlines,' 'Meta ad copy,' 'LinkedIn ad,' or 'creative testing.' This is pure creative production — distinct from paid-ads (campaign strategy). Use ad-creative when you need the copy, not the campaign plan.

614 installs
ALalibabacloud-find-skills logo

alibabacloud-find-skills

aliyun/alibabacloud-aiops-skills

Search and discover Alibaba Cloud agent skills from the AgentExplorer catalog.

1.5k installs
ST

stock-analysis

alphamoemoe/foci

Generate a comprehensive sentiment analysis report for a single stock. Use when users want deep analysis of a specific ticker like NVDA, TSLA, or AAPL.

970 installs