計算機科学のブログ

ほしい物リスト

Python - pytest - Primary Power - Writing Test Functions -

Python Testing with pytest, Second Edition - Simple, Rapid, Effective, and ScalableBrian Okken (著)、 Pragmatic Bookshelf のPart Ⅰ(Primary Power)、Chapter 2(Writing Test Functions)、Exercise 1.(98/598)の解答を求めてみる。

入出力結果(Terminal, Zsh)

(venv) ... code % pytest exercises/ch2/test_card_mod.py
============================= test session starts ==============================
platform darwin -- Python 3.13.3, pytest-8.3.5, pluggy-1.6.0
rootdir: /.../code
configfile: pytest.ini
collected 7 items                                                              

exercises/ch2/test_card_mod.py .......                                   [100%]

============================== 7 passed in 0.01s ===============================
(venv) ... code % pytest exercises/ch2/test_card_mod.py
============================= test session starts ==============================
platform darwin -- Python 3.13.3, pytest-8.3.5, pluggy-1.6.0
rootdir: /.../code
configfile: pytest.ini
collected 7 items                                                              

exercises/ch2/test_card_mod.py .F.....                                   [100%]

=================================== FAILURES ===================================
________________________________ test_defaults _________________________________

    def test_defaults():
        c = Card()
>       assert c.summary is None
E       AssertionError: assert '' is None
E        +  where '' = Card(summary='', owner=None, state='todo', id=None).summary

exercises/ch2/test_card_mod.py:31: AssertionError
=========================== short test summary info ============================
FAILED exercises/ch2/test_card_mod.py::test_defaults - AssertionError: assert '' is None
========================= 1 failed, 6 passed in 0.04s ==========================
(venv) ... code % pytest -v exercises/ch2/test_card_mod.py
============================= test session starts ==============================
platform darwin -- Python 3.13.3, pytest-8.3.5, pluggy-1.6.0 -- /.../code/venv/bin/python3.13
cachedir: .pytest_cache
rootdir: /.../code
configfile: pytest.ini
collected 7 items                                                              

exercises/ch2/test_card_mod.py::test_field_access PASSED                 [ 14%]
exercises/ch2/test_card_mod.py::test_defaults FAILED                     [ 28%]
exercises/ch2/test_card_mod.py::test_equality PASSED                     [ 42%]
exercises/ch2/test_card_mod.py::test_equality_with_diff_ids PASSED       [ 57%]
exercises/ch2/test_card_mod.py::test_inequality PASSED                   [ 71%]
exercises/ch2/test_card_mod.py::test_from_dict PASSED                    [ 85%]
exercises/ch2/test_card_mod.py::test_to_dict PASSED                      [100%]

=================================== FAILURES ===================================
________________________________ test_defaults _________________________________

    def test_defaults():
        c = Card()
>       assert c.summary is None
E       AssertionError: assert '' is None
E        +  where '' = Card(summary='', owner=None, state='todo', id=None).summary

exercises/ch2/test_card_mod.py:31: AssertionError
=========================== short test summary info ============================
FAILED exercises/ch2/test_card_mod.py::test_defaults - AssertionError: assert '' is None
========================= 1 failed, 6 passed in 0.03s ==========================
(venv) ... code % pytest --tb=no exercises/ch2/test_card_mod.py 
============================= test session starts ==============================
platform darwin -- Python 3.13.3, pytest-8.3.5, pluggy-1.6.0
rootdir: /.../code
configfile: pytest.ini
collected 7 items                                                              

exercises/ch2/test_card_mod.py .F.....                                   [100%]

=========================== short test summary info ============================
FAILED exercises/ch2/test_card_mod.py::test_defaults - AssertionError: assert '' is None
========================= 1 failed, 6 passed in 0.01s ==========================
(venv) ... code % pytest exercises/ch2/test_card_mod.py
============================= test session starts ==============================
platform darwin -- Python 3.13.3, pytest-8.3.5, pluggy-1.6.0
rootdir: /.../code
configfile: pytest.ini
collected 7 items                                                              

exercises/ch2/test_card_mod.py .F.....                                   [100%]

=================================== FAILURES ===================================
________________________________ test_defaults _________________________________

    def test_defaults():
        c = Card()
>       assert c.summary is None
E       AssertionError: assert '' is None
E        +  where '' = Card(summary='', owner='owner string', state='todo', id=None).summary

exercises/ch2/test_card_mod.py:31: AssertionError
=========================== short test summary info ============================
FAILED exercises/ch2/test_card_mod.py::test_defaults - AssertionError: assert '' is None
========================= 1 failed, 6 passed in 0.04s ==========================
(venv) ... code %