CommunityRecherche & Datenanalysegithub.com

kos322/testrail-skill

KI-Agent-Fähigkeit für die TestRail REST API – ohne Abhängigkeiten, sicherheitsfreundliche Alternative zu MCP-Servern.

Was ist testrail-skill?

Diese Fertigkeit (Skill) ermöglicht einem KI-Agenten den direkten Zugriff auf die TestRail REST API, ohne zusätzliche Abhängigkeiten oder MCP-Server. Sie besteht aus einer Sammlung von Bash-Skripten, die alle API-Endpunkte kapseln und die üblichen Arbeitsabläufe wie das Auflisten von Testfällen, das Abrufen von Projektdaten und das Verwalten von Testläufen vereinfachen. Die Fertigkeit unterstützt die Umgebungen Git Bash und WSL unter Windows und bietet dünne PowerShell-Wrapper für reine PowerShell-Umgebungen. Die zentralen Skripte sind für häufige Abfragen optimiert und bieten konsistente Ausgabeformate (JSON, reiner Text oder Integer), sodass der Agent Ergebnisse einfach weiterverarbeiten kann. Hilfsskripte wie `doctor.sh` helfen bei der Einrichtung und Fehlerbehebung, während `projects.sh` die Projekterkennung ermöglicht, wenn die Projekt-ID unbekannt ist.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add kos322/testrail-skill

Installed? Explore more Recherche & Datenanalyse skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

TestRail API Skill

Direkte TestRail REST API Integration durch repository-lokale Bash-Wrapper.

Installation

Klonen Sie das Repository zuerst:

git clone https://github.com/kos322/testrail-skill.git
cd testrail-skill

Einrichtung

Setzen Sie diese Umgebungsvariablen:

  • TESTRAIL_URL
  • TESTRAIL_USER
  • TESTRAIL_API_KEY

Basis-URL:

${TESTRAIL_URL}/index.php?/api/v2

Entscheidungsbaum

  • Bekannte PROJECT_ID + einfache Nur-Lese-Frage: den entsprechenden Wrapper direkt aufrufen.
  • Unbekannte PROJECT_ID: ./scripts/get_projects.sh aufrufen.
  • Umgebungs-/Authentifizierungs-/Einrichtungsproblem oder erste Installation: ./scripts/doctor.sh aufrufen.

Häufige Abfragen

# Bekannte Projekt-ID: Gesamtzahl der Testfälle
./scripts/count_cases.sh PROJECT_ID [SECTION_ID] [--suite SUITE_ID]

# Bekannte Projekt-ID: Vollständige Testfallliste mit automatischer Paginierung
./scripts/list_cases.sh PROJECT_ID [SECTION_ID] [--suite SUITE_ID]

# Bekannte Projekt-ID: Rohseite der paginierten Testfälle
./scripts/get_cases.sh PROJECT_ID [SECTION_ID] [--suite SUITE_ID]

# Jederzeit: Einzelnen Testfall abrufen
./scripts/get_case.sh CASE_ID | jq -r .title

# Einzelfeld ohne manuelles JSON-Parsing
./scripts/get_case_field.sh CASE_ID FIELD

# Abkürzung für Vorbedingungen
./scripts/get_case_precondition.sh CASE_ID

# Unbekannte Projekt-ID: Zugängliche Projekte entdecken
./scripts/get_projects.sh | jq '(.projects // .) | map({id, name})'

# Einrichtungs-/Authentifizierungsproblem: Umgebung und Zugriff validieren
./scripts/doctor.sh

Bevorzugte Wrapper

  • scripts/count_cases.sh — zuverlässige Gesamtzahl der Testfälle
  • scripts/list_cases.sh — vollständige Testfallliste mit automatischer Paginierung
  • scripts/get_cases.sh — rohe, paginierte Testfallantwort
  • scripts/get_case.sh — Abruf eines einzelnen Testfalls
  • scripts/get_case_field.sh — Abruf eines einzelnen Feldes
  • scripts/get_case_precondition.sh — Abkürzung für Vorbedingungen
  • scripts/get_projects.sh — zugängliche Projekte entdecken
  • scripts/doctor.sh — Einrichtungs-/Authentifizierungsprüfung
  • scripts/create_run.sh, scripts/add_result*.sh, scripts/close_run.sh — Testlauf-/Ergebnisabläufe
  • scripts/get_reference_data.sh — Status, Felder, Vorlagen, Benutzer

Ausgabeverträge

AbsichtBefehlAusgabe
Gesamtzahl der Testfällecount-caseseinfache Ganzzahl
Testfalllistelist-casesStandardmäßig Klartext: C{id}: {title}
Strukturierte Testfalllistelist-cases --format jsonJSON-Objekt mit count und cases
Ein Testfallget-caseJSON-Objekt des Testfalls
Ein Feld eines Testfallsget-case-fieldeinfacher Skalar/String oder kompaktes JSON für Arrays/Objekte
Vorbedingung eines Testfallsget-case-preconditionKlartext / roher Feldwert

Paginierung

  • get_cases, get_runs, get_results* und ähnliche Endpunkte können paginiert sein.
  • Gehen Sie nicht davon aus, dass .size eine sichere Gesamtzahl ist, es sei denn, _links.next ist leer.
  • Verwenden Sie ./scripts/count_cases.sh, wenn die Frage lautet: „Wie viele Testfälle gibt es?“

Windows

  • Bevorzugt: Git Bash / WSL.
  • Nur PowerShell-Umgebungen: Verwenden Sie die dünnen Wrapper in powershell/.
  • PowerShell-Wrapper starten nur Bash-Skripte; sie lesen .env nicht selbst.
.\powershell\count-cases.ps1 1
.\powershell\list-cases.ps1 1
.\powershell\list-cases.ps1 1 --format json
.\powershell\get-case.ps1 93
.\powershell\get-case-field.ps1 2 custom_preconds
.\powershell\get-case-precondition.ps1 2
.\powershell\get-cases.ps1 1 10 --suite 1
.\powershell\get-sections.ps1 1 1
.\powershell\get-runs.ps1 1

Bedarfsdokumentation

  • scripts/README.md — Skript-für-Skript Verwendung
  • docs/api-reference.md — Endpunktnotizen und Nutzlaststrukturen
  • docs/troubleshooting.md — Einrichtungs- und Authentifizierungsfehler
  • docs/agent-guide.md — agentspezifische Ausführungshinweise
  • docs/maintenance/endpoint-status.md — Wartungs-Momentaufnahme, keine Laufzeitanleitung

Beispiele

  • examples/workflow_ci.sh
  • examples/workflow_plans_milestones.sh
  • examples/workflow_attachments.sh

Offizielle API-Dokumentation: https://support.testrail.com/hc/en-us/categories/7076541806228-API-Manual

Verwandte Skills