Python Test Desenleri
pytest, TDD metodolojisi ve en iyi uygulamalar kullanarak Python uygulamaları için kapsamlı test stratejileri.
Ne Zaman Etkinleştirmeli
- Yeni Python kodu yazarken (TDD'yi takip et: red, green, refactor)
- Python projeleri için test suite'leri tasarlarken
- Python test coverage'ını gözden geçirirken
- Test altyapısını kurarken
Temel Test Felsefesi
Test-Driven Development (TDD)
Her zaman TDD döngüsünü takip edin:
- RED: İstenen davranış için başarısız bir test yaz
- GREEN: Testi geçirmek için minimal kod yaz
- REFACTOR: Testleri yeşil tutarken kodu iyileştir
# Adım 1: Başarısız test yaz (RED)
def test_add_numbers():
result = add(2, 3)
assert result == 5
# Adım 2: Minimal implementasyon yaz (GREEN)
def add(a, b):
return a + b
# Adım 3: Gerekirse refactor et (REFACTOR)
Coverage Gereksinimleri
- Hedef: 80%+ kod coverage'ı
- Kritik yollar: 100% coverage gereklidir
- Coverage'ı ölçmek için
pytest --covkullanın
pytest --cov=mypackage --cov-report=term-missing --cov-report=html
pytest Temelleri
Temel Test Yapısı
import pytest
def test_addition():
"""Te…