python-testing-patterns
Schreiben Sie bessere Python-Tests
Auch verfügbar von: ActiveInferenceInstitute,wshobson
Das Schreiben wartbarer Tests ist eine Herausforderung. Diese Skill bietet umfassende pytest-Muster einschließlich Fixtures, Mocking, Parametrisierung und TDD-Workflows, um Ihnen beim Aufbau zuverlässiger Test-Suiten zu helfen.
Die Skill-ZIP herunterladen
In Claude hochladen
Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen
Einschalten und loslegen
Teste es
Verwendung von "python-testing-patterns". Write tests for a calculate_discount function that takes price and discount_percentage, returns discounted price
Erwartetes Ergebnis:
Grundlegende Testdatei mit mehreren Testfällen, die normale Rabatte, Null-Rabatt und ungültige Eingaben abdecken
Verwendung von "python-testing-patterns". Create fixtures for testing a database connection with session scope
Erwartetes Ergebnis:
Fixture-Einrichtung mit korrektem Yield/Teardown-Muster für Datenbank-Ressourcenverwaltung
Verwendung von "python-testing-patterns". Mock HTTP requests to an API client that fetches user data
Erwartetes Ergebnis:
Tests unter Verwendung von patch() zum Mocken von requests.get mit verschiedenen Antwort-Szenarien
Sicherheitsaudit
SicherAll 87 static findings are false positives. The detected patterns (external_commands, network, env_access) are documentation examples of pytest commands, HTTP mocking patterns, and test fixture configurations - all legitimate testing education content. No actual security threats present.
Risikofaktoren
⚙️ Externe Befehle (1)
🌐 Netzwerkzugriff (1)
🔑 Umgebungsvariablen (1)
Erkannte Muster
Qualitätsbewertung
Was du bauen kannst
Einrichtung der Testumgebung für ein neues Python-Projekt
Einrichten einer kompletten Test-Suite für ein neues Python-Projekt mit Fixtures, conftest.py-Konfiguration und CI/CD-Integration
Testabdeckung für Legacy-Code
Hinzufügen von Tests zu vorhandenem ungetestetem Code unter Verwendung von Mocking zur Isolation von Units und Parametrisierung zur Abdeckung von Randfällen
API-Integrationstests
Schreiben von Integrationstests für REST-APIs unter Verwendung von Fixtures für Testdaten und Mocking für externe Service-Aufrufe
Probiere diese Prompts
Create pytest tests for a function called [FUNCTION_NAME] that [DESCRIPTION]. Use the AAA pattern.
Create pytest fixtures with [SCOPE] scope to provide [RESOURCE] for tests. Include proper setup and teardown.
Write tests that mock [EXTERNAL_SERVICE] calls using unittest.mock. Show both patch decorator and context manager approaches.
Create parameterized tests for [FUNCTION] using pytest.mark.parametrize to test [EDGE_CASES].
Bewährte Verfahren
- Verwenden Sie aussagekräftige Testnamen, die erklären, was getestet wird und welches Verhalten erwartet wird
- Halten Sie Tests unabhängig mit korrektem Setup/Teardown - kein gemeinsamer Zustand zwischen Tests
- Befolgen Sie das AAA-Muster: Arrange (Setup), Act (Ausführen), Assert (Überprüfen) klar getrennt
Vermeiden
- Vermeiden Sie Testnamen wie test_1 oder test_function, die den Testzweck nicht beschreiben
- Mischen Sie nicht mehrere Assertions in einem Test, wenn diese separate Tests sein könnten
- Vermeiden Sie das Testen von Implementierungsdetails statt von Verhalten - testen Sie, was der Code tut, nicht wie
Häufig gestellte Fragen
Was ist der Unterschied zwischen Unit-Tests und Integrationstests?
Wie mocke ich eine Funktion, die nicht die requests-Bibliothek verwendet?
Was ist Fixture-Scope und wann sollte ich jeden verwenden?
Wie teste ich Exceptions mit pytest?
Was ist Test-Driven Development (TDD)?
Wie führe ich nur Tests aus, die einem Keyword entsprechen?
Entwicklerdetails
Autor
sickn33Lizenz
MIT
Repository
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/python-testing-patternsRef
main
Dateistruktur