Python:
Pisanie testów

Jak to zrobić:

Python posiada wbudowany moduł do pisania testów, nazwany unittest. Oto, jak możesz go użyć do przetestowania prostej funkcji:

import unittest

def add(a, b):
    return a + b

class TestAddFunction(unittest.TestCase):
    def test_add(self):
        self.assertEqual(add(1, 2), 3)
        self.assertEqual(add(-1, 1), 0)
        self.assertNotEqual(add(10, 2), 12, "Powinno być 12")

if __name__ == '__main__':
    unittest.main()

Kiedy uruchomisz ten skrypt testowy, powinieneś zobaczyć wyniki wskazujące, czy twoje testy przeszły (lub nie).

Dla nowocześniejszych i bardziej wyrazistych testów możesz użyć zewnętrznej biblioteki, takiej jak pytest. Najpierw musisz ją zainstalować za pomocą pip:

pip install pytest

Następnie możesz napisać swoje testy w prostszy sposób, bez konieczności dziedziczenia czegokolwiek:

# Zapisz to w pliku o nazwie test_with_pytest.py
def add(a, b):
    return a + b

def test_add():
    assert add(1, 2) == 3
    assert add(-1, 1) == 0
    assert add(10, 2) != 12, "Powinno być 12"

Aby uruchomić swoje testy z pytest, wystarczy wykonać:

pytest test_with_pytest.py

Powinieneś zobaczyć wyniki testów pokazane przez pytest.