Python Assertrue

Python Assertrue
W tym samouczku dowiesz się, jak sprawdzić, czy dane wyrażenie oceni True to True, czy nie za pomocą funkcji AssertTrue ().

Funkcja Python AssertTrue ()

Funkcja AssertTrue () jest częścią Moduł Unitest. Jak sama nazwa wskazuje, pozwala przetestować, czy wyrażenie jest prawdziwe, czy fałszywe.

Składnia funkcji jest jak pokazana:

AssertTrue (wyrażenie, msg = brak)

Jeżeli wyrażenie oceni True, test jest uważany za uchwalony; W przeciwnym razie test jest uważany za awarii.

Możesz także dołączyć opcjonalny parametr wiadomości, który definiuje niestandardowy komunikat, jeśli test się nie powiedzie.

Przykład 1

Poniższy przykład pokazuje, jak sprawdzić, czy wartość danej wartości łańcucha jest w ASCII.

importować jednortowe
klasa Testbool (Unitest.Testcase):
def test_if_string (self):
var = 'Geekbits.io '
samego siebie.Assertrue (var.isascii ())

Kod powyżej testuj, czy podany ciąg wejściowy jest ciągiem ASCII. Ponieważ wartość jest prawdą, test przechodzi, jak pokazano:

Python3 -m unittest -v bool_test.py

Wyjście:

test_if_string (bool_test.Testbool)… ok
-------------------------------------------------------------
Run 1 Test w 0.000
OK

Przykład 2

W poniższym przykładzie test się nie powiedzie, ponieważ ciąg wejściowy nie znajduje się w znakach ASCII.

importować jednortowe
klasa Testbool (Unitest.Testcase):
def test_if_string (self):
var = '大'
samego siebie.Assertrue (var.isascii ())

Uruchomienie powyższego testu powinno się nie udać, jak pokazano:

test_if_string (bool_test.TESTBOOL)… upadek
================================================== ========
Fail: test_if_string (bool_test.Testbool)
--------------------------------------------------------------
Traceback (najnowsze połączenie ostatnie):
Plik "./bool_test.py ", wiersz 6, w test_if_string
samego siebie.Assertrue (var.isascii ())
AssertionError: Fałsz nie jest prawdą
--------------------------------------------------------------
Run 1 Test w 0.000
Nieudane (awarie = 1)

Jak widzimy, funkcja zwraca false, ponieważ ciąg nie jest znakami ASCII.

Przykład 3

Możemy również dołączyć wiadomość niestandardową, jeśli test się nie powiedzie za pomocą parametru MSG. Przykładowy kod jest taki jak pokazano:

importować jednortowe
klasa Testbool (Unitest.Testcase):
def test_if_string (self):
var = '大'
samego siebie.Assertrue (var.isascii (), msg = "String nie jest ASCII")

Uruchomienie powyższego testu powinno powrócić:

================================================== ========
Fail: test_if_string (bool_test.Testbool)
----------------------------------------------------------------------
Traceback (najnowsze połączenie ostatnie):
Plik "./bool_test.py ", wiersz 6, w test_if_string
samego siebie.Assertrue (var.isascii (), msg = "String nie jest ASCII")
AssertionError: false jest nieprawda: ciąg nie jest ASCII
--------------------------------------------------------------
Run 1 Test w 0.000
Nieudane (awarie = 1)

Wniosek

W tym poście nauczyłeś się, jak korzystać z funkcji AssertTrue (), aby przetestować, czy dane wyrażenie oceni True.