Python assertIsNone()

Resumo : neste tutorial, você aprenderá como usar o assertIsNone()método Python para testar se uma expressão é None.

Introdução ao método Python assertIsNone()

O assertIsNone()é um método da TestCaseclasse do módulo unittest . O assertIsNone()teste se uma expressão for None :

assertIsNone(expr, msg=None)Linguagem de código:  Python  ( python )

Se exprfor None, o teste será aprovado. Caso contrário, o teste falhará.

O msgé opcional. Ele será exibido no resultado do teste se o teste falhar.

Exemplos do método Python assertIsNone()

Vejamos alguns exemplos de uso do assertIsNone()método.

1) Usando assertIsNone() com um caso de sucesso

O exemplo a seguir usa assertIsNone()para testar se a variável da mensagem é None:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_none(self):
        message = None
        self.assertIsNone(message)Linguagem de código:  Python  ( python )

Execute o teste:

python -m unittest -vLinguagem de código:  Python  ( python )

Saída:

test_variable_none (test_none.TestNone) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.000sLinguagem de código:  texto simples  ( texto simples )

2) Usando assertIsNone() com um caso de falha

O exemplo a seguir usa o assertIsNone()método para testar se a messagevariável é None:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_not_none(self):
        message = 'Hello'
        self.assertIsNone(message)Linguagem de código:  Python  ( python )

Execute o teste:

python -m unittest -vLinguagem de código:  Python  ( python )

Saída:

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)Linguagem de código:  texto simples  ( texto simples )

Como a mensagem é 'Hello', não é None. Portanto, o teste falhou.

3) Usando assertIsNone() com um caso de falha com uma mensagem

O exemplo a seguir usa assertIsNone()para testar se a variável da mensagem é None. Além disso, mostramos uma mensagem quando o teste falha:

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.'
        )Linguagem de código:  Python  ( python )

Execute o teste:

python -m unittest -vLinguagem de código:  Python  ( python )

Saída:

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)Linguagem de código:  texto simples  ( texto simples )

Método Python assertIsNotNone()

O assertIsNotNone()oposto do assertIsNone()método. O assertIsNotNone()método testa se uma variável não é None.

assertIsNotNone(expr, msg=None)Linguagem de código:  Python  ( python )

O teste passa se exprnão for Noneou falha caso contrário. Por exemplo:

import unittest


class TestNone(unittest.TestCase):
    def test_variable_is_not_none(self):
        message = 'Bye'
        self.assertIsNotNone(message)Linguagem de código:  Python  ( python )

Execute o teste:

python -m unittest -vLinguagem de código:  Python  ( python )

Saída:

test_variable_is_not_none (test_not_none.TestNone) ... ok

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

OKLinguagem de código:  texto simples  ( texto simples )

Resumo

  • Use o assertIsNone()método para testar se uma variável é None.
  • use o assertIsNotNone()método para testar se uma variável não é None.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *