pytest-recording
HTTP-Interaktionen in Python-Tests aufzeichnen und wiedergeben
Das Testen externer APIs ist aufgrund von Netzwerkabhängigkeiten und Rate Limits unzuverlässig und langsam. pytest-recording erfasst HTTP-Interaktionen als wiederverwendbare YAML-Kassetten für schnelle, deterministische Tests. Verwenden Sie diese Skill, um API-Aufrufe zu mocken, sensible Zugangsdaten zu filtern und VCR-Konfigurationsprobleme zu debuggen.
스킬 ZIP 다운로드
Claude에서 업로드
설정 → 기능 → 스킬 → 스킬 업로드로 이동
토글을 켜고 사용 시작
테스트해 보기
"pytest-recording" 사용 중입니다. Erstelle einen VCR-Test für eine API, die Bearer-Token-Authentifizierung erfordert
예상 결과:
- Füge @pytest.mark.vcr() Decorator zu deiner Testfunktion hinzu
- Erstelle vcr_config-Fixture zum Filtern des Autorisierungs-Headers
- Führe Test mit --vcr-record=once aus, um initiale Kassette zu erstellen
- Überprüfe, dass die Kassette dein Token nicht enthält, indem du die YAML-Datei prüfst
- Zukünftige Durchläufe verwenden die aufgezeichnete Antwort ohne Live-API-Aufrufe
"pytest-recording" 사용 중입니다. Wie aktualisiere ich Kassetten, wenn sich die API ändert?
예상 결과:
- Option 1: Lösche spezifische Kassetten-Dateien und führe Tests erneut mit --vcr-record=once aus
- Option 2: Verwende --vcr-record=rewrite, um alle Kassetten auf einmal zu aktualisieren
- Option 3: Verwende --vcr-record=new_episodes, um neue Antworten hinzuzufügen und bestehende zu behalten
- Überprüfe aktualisierte Kassetten, um sicherzustellen, dass sie die erwarteten Response-Daten enthalten
보안 감사
안전This is a documentation-only skill for pytest-recording (VCR.py), a widely-used Python testing library. All 67 static findings are false positives. The 'external commands' are example pytest/shell commands in documentation code blocks, 'hardcoded IP addresses' are localhost examples for configuring VCR ignore_hosts, and 'API keys' are demonstrating how to filter sensitive authentication headers from recordings. The skill teaches security best practices for protecting credentials, not exploiting them.
위험 요인
품질 점수
만들 수 있는 것
Externe API-Aufrufe mocken
Ersetzen Sie Live-API-Aufrufe durch aufgezeichnete Antworten für zuverlässige, schnelle Testausführung ohne Rate Limits oder Netzwerkabhängigkeiten.
Deterministische Tests erstellen
Stellen Sie sicher, dass Tests konsistente Ergebnisse liefern, indem exakte HTTP-Antworten wiedergegeben werden, wodurch flaky Tests durch API-Änderungen eliminiert werden.
Sicheres CI/CD-Testing
Führen Sie Tests in CI/CD-Pipelines aus, ohne API-Zugangsdaten offenzulegen, indem sensible Daten aus aufgezeichneten Kassetten gefiltert werden.
이 프롬프트를 사용해 보세요
Konvertiere diesen Test zur Verwendung von pytest-recording: [Testcode einfügen]. Zeige mir den Decorator und die benötigten Imports.
Erstelle eine vcr_config-Fixture, die Autorisierungs-Header und API-Keys für OpenAI- und Anthropic-APIs filtert.
Mein Test kann die Kassetten-Datei nicht finden. Führe mich durch die Debugging-Schritte einschließlich Dateipfaden und Aufzeichnungsmodi.
Zeige mir, wie man VCR konfiguriert, um Requests nur nach Methode und Pfad zu matchen und Response-Header vor der Aufzeichnung zu bereinigen.
모범 사례
- Filtern Sie immer Authentifizierungs-Header und API-Keys, bevor Sie Kassetten aufzeichnen
- Verwenden Sie beschreibende Testnamen, da diese automatisch zu Kassetten-Dateinamen werden
- Überprüfen Sie Kassetten-Dateien in Pull Requests, um sicherzustellen, dass keine Secrets committet werden
- Löschen und zeichnen Sie Kassetten regelmäßig neu auf, um API-Änderungen frühzeitig zu erkennen
피하기
- Kassetten mit echten API-Zugangsdaten aufzeichnen, ohne sensible Daten zu filtern
- Große Kassetten-Dateien mit unnötigen HTTP-Interaktionen committen
- Verwendung von --vcr-record=all in CI/CD, was funktionierende Kassetten überschreibt
- Kassetten-Merge-Konflikte ignorieren, anstatt ordnungsgemäß neu aufzuzeichnen