PYTHON UNIT TESTING: TESTING PYTHON CODE USING DOCTEST EĞİTİMİ

Belgenizi çalıştırılabilir teste dönüştürün

Docstring içindeki >>> örneklerini doctest ile otomatik doğrulayın; bayraklar, istisnalar, dosya doctest ve pytest/unittest entegrasyonunu uygulayın

Python doctest ile >>> örneklerini test etme, çıktı eşleştirme, istisna izleri, ELLIPSIS ve NORMALIZE_WHITESPACE bayrakları, metin dosyası testleri ve unittest/pytest/Sphinx entegrasyonu işlenir.

3 gün Temel Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Belge ve test birliği: doctest

Python doctest modülüyle docstring içine gömülü örnekleri test olarak çalıştırmayı öğretir. >>> söz dizimi, beklenen çıktı eşleştirme, istisna izleri, çok satırlı örnekler, ELLIPSIS, NORMALIZE_WHITESPACE, IGNORE_EXCEPTION_DETAIL gibi seçenek bayrakları, metin dosyalarında doctest, doctest.testmod ve testfile, unittest ve pytest (--doctest-modules) entegrasyonu, sınırları ve iyi pratikleri uygulamalı işlenir.

Süre ve Format

3 Gün. Her gün dört modül; 1. gün doctest Temelleri, 2. gün Seçenekler ve Dosya Testleri, 3. gün Entegrasyon ve Proje konularına ayrılmıştır.

Seviye

Temel Seviye — doctest ile belgelenmiş örnek tabanlı testler, seçenekler ve unittest/pytest entegrasyonu

Öğrenme Metodu

Her kavram, bir fonksiyon veya modül docstring'i yazılarak ve doctest çalıştırılarak işlenir; bozuk örnekler üretilip düzeltilir.

Neden Bu Eğitim?

📖Canlı Belgelendirme

Docstring örnekleriniz sürekli doğrulanır ve eskimez.

⚡Hızlı Test

Ek test dosyası yazmadan küçük fonksiyonları test edersiniz.

🔌Entegrasyon

doctest'i unittest ve pytest ile birlikte çalıştırırsınız.

Anahtar Konular

python doctestdoctest eğitimipython docstring testdoctest pytestdoctest ELLIPSISpython belge testidoctest.testmodsphinx doctestpython testçalıştırılabilir belge
“Örneği çalışmayan belge, yanlış bilgi veren bir belgedir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Python Temelleri

Fonksiyon ve docstring yazımı bilinmelidir.

2
REPL Kullanımı

Python etkileşimli kabuk (>>>) deneyimi faydalıdır.

3
Python Kurulumu

Python 3.10+ ve bir editör kurulu olmalıdır.

4
Modül Yapısı

import ve __name__ == "__main__" kalıbı bilinmelidir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı ile docstring içindeki örnekleri yazar ve doctest ile çalıştırır.
Modül 1
İlk doctest
  • docstring içinde >>> örneği
  • beklenen çıktı satırı
  • python -m doctest -v
  • doctest.testmod()
  • if __name__ == '__main__' ile çalıştırma
  • başarısız örnek çıktısı
Modül 2
Çıktı Eşleştirme
  • print ve repr farkı
  • boşluk ve satır sonu
  • sözlük ve küme sıralama tuzağı
  • float çıktıları ve yuvarlama
  • None dönüşü ve boş çıktı
  • çok satırlı çıktı
Modül 3
Çok Satırlı Örnekler
  • ... devam satırları
  • döngü ve fonksiyon tanımı
  • import ve ön hazırlık
  • değişken paylaşımı örnekler arası
  • sınıf örnekleri
  • blank satır <BLANKLINE>
Modül 4
İstisna Testleri
  • Traceback (most recent call last) biçimi
  • istisna türü ve mesajı
  • IGNORE_EXCEPTION_DETAIL
  • beklenen hata örneği
  • hatalı kullanım belgeleme
  • geri izleme kırpma
Günün hedefiKatılımcı ile seçenek bayraklarını ve dosya doctest'i kullanır.
Modül 1
Seçenek Bayrakları
  • ELLIPSIS ile ... eşleştirme
  • NORMALIZE_WHITESPACE
  • SKIP ve +SKIP satır içi
  • DONT_ACCEPT_TRUE_FOR_1
  • FAIL_FAST
  • optionflags ve doctest dizini
Modül 2
Metin Dosyasında doctest
  • README ve kılavuz doğrulama
  • doctest.testfile
  • module_relative ve yol
  • Markdown / reStructuredText örnekleri
  • belge ile kod senkronu
  • CI'da belge testi
Modül 3
Test Verisi Yönetimi
  • globs ve extraglobs
  • setUp mantığı
  • geçici dosya ve dizin
  • rastgelelik ve seed
  • zaman bağımlı örnekler
  • ortam bağımlılığı
Modül 4
Sınırlar ve İyi Pratik
  • kapsamlı test için doctest yeterli mi
  • docstring'i şişirme riski
  • okunabilirlik odaklı örnekler
  • karmaşık mantık için unittest/pytest
  • örnek stili (Google, NumPy)
  • belge kalitesi
Günün hedefiKatılımcı ile doctest'i test paketlerine ve CI'a entegre eder.
Modül 1
unittest Entegrasyonu
  • doctest.DocTestSuite
  • load_tests protokolü
  • DocFileSuite
  • karma test suite
  • test keşfinde doctest
  • sonuç raporlama
Modül 2
pytest Entegrasyonu
  • -doctest-modules
  • -doctest-glob
  • conftest.py ve doctest_namespace
  • doctest ve fixture
  • pytest.ini ayarları
  • doctest kapsamı
Modül 3
Belgeleme Araçları
  • Sphinx doctest eklentisi (sphinx.ext.doctest)
  • autodoc ile birlikte
  • Read the Docs CI
  • örneklerin sürüm uyumu
  • belge testlerinde sürüm matrisi
  • değişiklik günlüğü
Modül 4
Mini Proje
  • küçük bir yardımcı kütüphane yazma
  • doctest ile belgeleme
  • unittest ile ek testler
  • CI betiği
  • README doğrulaması
  • kapanış tartışması

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Docstring Testi

Docstring içindeki >>> örneklerini test olarak yazabilirsiniz.

✅
Çıktı Eşleştirme

Çıktı biçimi tuzaklarını yönetebilirsiniz.

✅
İstisna Testi

Traceback biçimiyle hata örneklerini doğrulayabilirsiniz.

✅
Seçenek Bayrakları

ELLIPSIS ve NORMALIZE_WHITESPACE gibi bayrakları kullanabilirsiniz.

✅
Dosya doctest

README ve kılavuzları testfile ile doğrulayabilirsiniz.

✅
unittest Entegrasyonu

DocTestSuite ile doctest'leri paket içine alabilirsiniz.

✅
pytest Entegrasyonu

--doctest-modules ile pytest hattına ekleyebilirsiniz.

✅
Doğru Araç Seçimi

doctest ile unittest/pytest arasında gerekçeli karar verebilirsiniz.

Kimler İçin Uygundur?

  • Python geliştiricileri
  • kütüphane yazarları
  • teknik yazarlar
  • belgeleri güncel tutmak isteyen ekipler

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Kütüphane yazarları, Python geliştiricileri ve belgelerini güncel tutmak isteyen teknik yazarlar için uygundur.
doctest tüm testlerin yerini alır mı?
Hayır; basit örnekler için idealdir, karmaşık mantık için unittest veya pytest önerilir.
pytest ile çalışır mı?
Evet, --doctest-modules ile pytest hattına eklenir.
Sphinx ile ilişkisi nedir?
sphinx.ext.doctest ile belge örnekleri test edilebilir, bu da eğitimde gösterilir.
Sertifika verilir mi?
Katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Python Unit Testing: Testing Python Code Using doctest Eğiti Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
SeviyeTemel Seviye
FormatOnline / Yüz Yüze / Hibrit
KonuPython
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

PythonConditional Statements & Loops: Advanced Operations Using for Loops in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Conditional Statements & Loops: Advanced Operations Using for Loops in Python Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Python ileri for döngüleri eğitimi: iç içe döngüler, enumerate, zip, comprehension, generator, itertools ve performans karşılaştırmalı uygulamalar.

Detayları Gör →
PythonConditional Statements & Loops: If-else Control Structures in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Conditional Statements & Loops: If-else Control Structures in Python Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Python if-else eğitimi: if, elif, else, karşılaştırma ve mantıksal operatörler, truthiness, match-case ve kullanıcı girdisiyle karar verme uygulamaları.

Detayları Gör →
PythonConditional Statements & Loops: The Basics of for Loops in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Conditional Statements & Loops: The Basics of for Loops in Python Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Python for döngüleri temel eğitimi: range, liste, string ve sözlük dolaşımı, enumerate, zip, break, continue ve iç içe döngülerle uygulamalı alıştırmalar.

Detayları Gör →
PythonConditional Statements & Loops: While Loops in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Conditional Statements & Loops: While Loops in Python Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Python while döngüleri eğitimi: sayaç ve biriktirici, break, continue, while-else, girdi doğrulama, sonsuz döngü ayıklama ve dosya/kuyruk işleme uygulamaları.

Detayları Gör →
PythonCore Statistical Concepts: Statistics & Sampling with Python Eğitimi
Yazılım Geliştirme Eğitimleri

Core Statistical Concepts: Statistics & Sampling with Python Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Python ile temel istatistik ve örnekleme eğitimi: tanımlayıcı istatistik, olasılık dağılımları, bootstrap, güven aralığı, hipotez testleri ve A/B testi uygulama

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn