Felhasználói eszközök

Eszközök a webhelyen


tanszek:oktatas:informacios_rendszerek_integralasa:tdd_pelda

Különbségek

A kiválasztott változat és az aktuális verzió közötti különbségek a következők.

Összehasonlító nézet linkje

Előző változat mindkét oldalon Előző változat
Következő változat
Előző változat
tanszek:oktatas:informacios_rendszerek_integralasa:tdd_pelda [2024/02/25 22:03]
knehez
tanszek:oktatas:informacios_rendszerek_integralasa:tdd_pelda [2024/02/25 22:32] (aktuális)
knehez [Teszt írása]
Sor 1: Sor 1:
-==== Teszt vezérelt fejlesztés ====+===== Teszt vezérelt fejlesztés ​=====
  
 Hozzunk létre egy könyvtárat és lépjünk bele: Hozzunk létre egy könyvtárat és lépjünk bele:
Sor 18: Sor 18:
 ===== Teszt írása ====== ===== Teszt írása ======
  
-hozzunk létre egy //​test_basic.py//​ fájlt a teszt könyvtárban és +hozzunk létre egy //​test_basic.py//​ fájlt a teszt könyvtárban ​a következő tartalommal:​ 
 + 
 +<sxh python>​ 
 +def test_always_passes():​ 
 +    assert True 
 + 
 +def test_always_fails():​ 
 +    assert False 
 +</​sxh>​ 
 + 
 +Majd futtassuk a tesztet: 
 +    python -m pytest tests 
 + 
 +Hozzunk létre egy másik teszt fájlt, test_fixture.py:​ 
 + 
 +<sxh python>​ 
 +import pytest 
 + 
 +@pytest.fixture 
 +def example_fixture():​ 
 +    return 1 
 + 
 +def test_with_fixture(example_fixture):​ 
 +    assert example_fixture == 1 
 +</​sxh>​ 
 + 
 +A teszt futtatása után az alábbi eredményt kapjuk: 
 + 
 +{{:​tanszek:​oktatas:​informacios_rendszerek_integralasa:​pasted:​20240225-220731.png}} 
 + 
 +Javítsuk ki a tesztet ​és gihub repositoryba töltsük fel. 
 + 
 +Hozzunk létre egy app alkönyvtárat a gyökérben és üres //​__init__.py//​ fájlt és egy //​data_formatter.py//​ fájlt, a //​tests/​test_data_formatter.py//​. 
 + 
 +{{:​tanszek:​oktatas:​informacios_rendszerek_integralasa:​pasted:​20240225-222912.png}} 
 + 
 +A test_data_formatter.py tartalma legyen: 
 + 
 +<sxh python>​ 
 +from app.data_formatter import format_data_for_display 
 +def test_format_data_for_display():​ 
 +    people = [ 
 +        { 
 +            "​given_name":​ "​Karoly",​ 
 +            "​family_name":​ "​Nehez",​ 
 +            "​title":​ "​Senior Software Engineer",​ 
 +        }, 
 +        { 
 +            "​given_name":​ "​John",​ 
 +            "​family_name":​ "​Smith",​ 
 +            "​title":​ "​Project Manager",​ 
 +        }, 
 +    ] 
 + 
 +    assert format_data_for_display(people) == [ 
 +        "​Karoly Nehez: Senior Software Engineer",​ 
 +        "John Smith: Project Manager",​ 
 +    ] 
 +</​sxh>​ 
 + 
 +A data_formatter.py-ben megírjuk az implementációt:​ 
 +<sxh python>​ 
 +def format_data_for_display(people):​ 
 +    return [f"​{person['​given_name'​]} {person['​family_name'​]}:​ {person['​title'​]}"​ for person in people] 
 +</​sxh>​ 
 + 
 +Futtassuk a tesztet: 
 +    python -m pytest tests
tanszek/oktatas/informacios_rendszerek_integralasa/tdd_pelda.1708898586.txt.gz · Utolsó módosítás: 2024/02/25 22:03 szerkesztette: knehez