Testrail

alirezarezvani/claude-skills/engineering-team/playwright-pro/skills/testrail

by alirezarezvani19392f7a0826No license27K starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 5 weeks ago

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".

AI-generated overview

Syncs Playwright tests with TestRail test management: import cases, push results, create runs, and report coverage.

What it does
This skill describes a bidirectional sync between Playwright tests and TestRail test management. It covers importing TestRail cases to generate Playwright tests, pushing Playwright results back to TestRail, creating test runs, reporting coverage between the two systems, and updating TestRail cases from test code. It produces generated test files, result pushes, run IDs, and coverage summaries.
When to use it
Use it when a user mentions TestRail, test management, test cases, test runs, syncing test cases, pushing results to TestRail, or importing from TestRail. It fits teams that keep Playwright tests and TestRail cases aligned.
Requirements
Requires the TestRail MCP server registered manually (the plugin does not auto-register it; install its dependencies and add it to user or project MCP config), plus environment variables TESTRAIL_URL, TESTRAIL_USER, and TESTRAIL_API_KEY. Network access to the TestRail instance and a Playwright project are needed. It ships no scripts; it is instructions only.

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.

The TestRail MCP server is not auto-registered (issue #978). pw-testrail was removed from the plugin's .mcp.json because it failed to connect for every user (the plugin ships no node_modules). The testrail_* MCP tools used below, and the /pw:testrail command, will fail with "tool not found" until it is enabled manually — see the Integrations section of the plugin's CLAUDE.md (cd integrations/testrail-mcp && npm install, then register the server in your own user/project MCP config). Setting the env vars alone is not sufficient.

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:
    bash
    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: 150Playwright tests with TestRail IDs: 120Unlinked TestRail cases: 30Playwright 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:

typescript
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

Source and attribution

Source:alirezarezvani/claude-skillsinengineering-team/playwright-pro/skills/testrailat commit19392f7

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal