Interfejs CLI

Wprowadzenie do testowania w Pythonie

Alexander Levin

Data Scientist

Przykład: kod

Test operatora potęgowania:

# test_sqneg.py
import unittest
# Declaring the TestCase class
class TestSquared(unittest.TestCase):
    # Defining the test
    def test_negative(self):
        self.assertEqual((-3) ** 2, 9)

Polecenie CLI:

python3 -m unittest test_sqneg.py

Uruchomienie skryptu test_sqneg.py z użyciem modułu unittest.

Wprowadzenie do testowania w Pythonie

Przykład: wyjście

Polecenie: python3 -m unittest test_sqneg.py

Wyjście testu: wyjście testu unittest test_sqneg.py

Wprowadzenie do testowania w Pythonie

Argument keyword -k

unittest -k – uruchamia metody i klasy testowe pasujące do wzorca lub podciągu

Polecenie: python3 -m unittest -k "SomeStringOrPattern" test_script.py

Przykład: python3 -m unittest -k "Squared" test_sqneg.py

Wyjście: wyjście z argumentem keyword

1 https://docs.python.org/3/library/unittest.html
Wprowadzenie do testowania w Pythonie

Flaga fail fast -f

unittest -f – zatrzymuje testy po pierwszym błędzie lub niepowodzeniu.

Polecenie: python3 -m unittest -f test_script.py

Przykład zastosowania: gdy wszystkie testy są krytyczne, np. kontrola samolotu przed lotem.

przykład nieudanego testu

1 https://docs.python.org/3/library/unittest.html
Wprowadzenie do testowania w Pythonie

Flaga catch -c

Flaga catch unittest -c – umożliwia przerwanie testu przez naciśnięcie "Ctrl - C".

  • Jeśli "Ctrl - C"
    • zostanie naciśnięte raz, unittest czeka na zakończenie bieżącego testu i wyświetla dotychczasowe wyniki.
    • zostanie naciśnięte dwa razy, unittest zgłasza wyjątek KeyboardInterrupt.

Polecenie: python3 -m unittest -c test_script.py

Przykład zastosowania: debugowanie dużego zestawu testów

1 https://docs.python.org/3/library/unittest.html
Wprowadzenie do testowania w Pythonie

Flaga verbose -v

unittest -v – uruchamia testy ze szczegółowymi informacjami

Polecenie: python3 -m unittest -v test_script.py.

Przykład zastosowania: debugowanie

Przykład wyjścia: wyjście unittest z flagą verbose

1 https://docs.python.org/3/library/unittest.html
Wprowadzenie do testowania w Pythonie

Podsumowanie

  • Podstawowe polecenie bez argumentów python3 -m unittest test_script.py

  • Wyjście w unittest

  • Argument keyword: python3 -m unittest -k "SomeStringOrPattern" test_script.py

  • Flaga fail fast: python3 -m unittest -f test_script.py

  • Flaga catch: python3 -m unittest -c test_script.py

  • Flaga verbose: python3 -m unittest -v test_script.py

Wprowadzenie do testowania w Pythonie

Czas na ćwiczenia!

Wprowadzenie do testowania w Pythonie

Preparing Video For Download...