Функция AssertIsNone() в Python с примерами

AssertIsNone() — это метод класса TestCase модуля unittest в Python для проверки того, имеет ли выражение значение None.

Содержание

Как использовать метод AssertIsNone() в Python?

Проверка AssertIsNone(), если выражение имеет значение None:

assertIsNone(expr, msg=None)

Если expr равен None, тест пройден. msg не является обязательным. Это будет отображено в результатах теста, если тест не пройден.

Примеры метода Python AssertIsNone()

Давайте рассмотрим несколько примеров использования метода AssertIsNone().

1) Использование AssertIsNone() в случае успеха

В следующем примере метод AssertIsNone() используется для проверки того, имеет ли переменная сообщения значение None:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_none(self):
        message = None
        self.assertIsNone(message)

Запустите тест:

python -m unittest -v

Выход:

test_variable_none(test_none.TestNone) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.000s

2) Использование AssertIsNone() в случае неудачи

В следующем примере метод AssertIsNone() используется для проверки того, имеет ли переменная сообщения значение None:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_not_none(self):
        message = 'Hello'
        self.assertIsNone(message)

Запустите тест:

python -m unittest -v

Выход:

test_variable_not_none(test_none.TestNone) ... FAIL

======================================================================
FAIL: test_variable_not_none(test_none.TestNone)
----------------------------------------------------------------------
Traceback(most recent call last):
  File "D:\python-unit-testing\test_none.py", line 7, in test_variable_not_none
    self.assertIsNone(message)
AssertionError: 'Hello' is not None

----------------------------------------------------------------------
Ran 1 test in 0.001s

FAILED(failures=1)

Поскольку сообщение «Hello» не имеет значения «None», тест провалился.

3) Пример AssertIsNone() в случае провала с сообщением

В следующем примере метод AssertIsNone() используется для проверки того, имеет ли переменная сообщения значение None. Кроме того, мы показываем сообщение, когда тест не пройден:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_not_none(self):
        message = 'Hello'
        self.assertIsNone(
            message,
            f'The message is "{message}" so it is not None.'
        )

Запустите тест:

python -m unittest -v

Выход:

test_variable_not_none(test_none.TestNone) ... FAIL

======================================================================
FAIL: test_variable_not_none(test_none.TestNone)
----------------------------------------------------------------------
Traceback(most recent call last):
  File "D:\python-unit-testing\test_none.py", line 7, in test_variable_not_none
    self.assertIsNone(
AssertionError: 'Hello' is not None : The message is "Hello" so it is not None.

----------------------------------------------------------------------
Ran 1 test in 0.001s

FAILED(failures=1)

Метод AssertIsNotNone() в Python

Метод AssertIsNotNone() является противоположностью метода AssertIsNone(). Метод AssertIsNotNone() проверяет, не является ли переменная None.

assertIsNotNone(expr, msg=None)

Тест считается пройденным, если выражение не равно None, или не пройден в противном случае. Например:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_is_not_none(self):
        message = 'Bye'
        self.assertIsNotNone(message)

Запустите тест:

python -m unittest -v

Выход:

test_variable_is_not_none(test_not_none.TestNone) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.001s

OK
Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *