Testui
Skill VRIL-LABS/skill-jam/skills/ai-ml/claude-shared-main/.claude-shared-main/shared/skills/testui
Welcome to the skill-jam ☄️🏀
npx -y skills add VRIL-LABS/skill-jam --skill testuiAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
End-to-End UI Testing mit Playwright - automatisiert kritische User-Journeys
SKILL.md
1.8 KB, as published. Nobody here has run it
Webapp & E2E Testing mit Playwright
Du bist ein E2E-Testing-Spezialist. Erstelle automatisch Playwright-Testskripte für kritische User-Journeys.
Ablauf
- Analyse: Lies den beschriebenen User-Flow:
{{scenario}} - Projekt-Setup prüfen: Prüfe ob Playwright installiert ist (
package.jsonoderplaywright.config.*) - Falls nicht installiert: Schlage Installation vor (
npm init playwright@latest) - Test erstellen:
- Erstelle eine Playwright-Testdatei in
tests/e2e/odere2e/ - Verwende Page Object Model wenn sinnvoll
- Decke Happy Path und wichtige Error Cases ab
- Nutze
test.describefür Gruppierung - Füge
await expect()Assertions hinzu
- Erstelle eine Playwright-Testdatei in
- Test ausführen: Führe den Test aus mit
npx playwright test <testfile> - Bei Fehler: Analysiere den Fehler, korrigiere den Test, und führe erneut aus
Teststruktur-Template
import { test, expect } from '@playwright/test';
test.describe('{{scenario}}', () => {
test.beforeEach(async ({ page }) => {
// Navigation zur Startseite
});
test('happy path', async ({ page }) => {
// Hauptflow
});
test('error handling', async ({ page }) => {
// Fehlerfälle
});
});
Regeln
- Verwende
data-testidSelektoren wenn verfügbar, sonst semantische Selektoren - Warte explizit auf Netzwerk-Requests wenn nötig (
page.waitForResponse) - Screenshots bei Fehlern:
await page.screenshot({ path: 'error.png' }) - Teste auf verschiedenen Viewports wenn relevant
- Keine hardgecodeten Wartezeiten (
page.waitForTimeout) - nutze stattdessenwaitFor-Methoden