Métodos de afirmação Python Unittest

Resumo : neste tutorial, você aprenderá uma visão geral dos unittestmétodos assert do Python para realizar testes de unidade.

Introdução aos métodos de afirmação mais unittest do Python

A TestCaseclasse do módulo unittest fornece um grande número de métodos assert para testar. A tabela a seguir mostra os métodos assert mais comumente usados:

Método Verifica isso
assertEqual(x, y, msg=None) x == y
assertNotEqual(x,y,msg=None) x != y
assertTrue(x, msg=None) bool(x) is True
assertFalse(x, msg=None) bool(x) is False
assertIs(x, y , msg=None) x is y
assertIsNot(x, y, msg=None) x  is not e
assertIsNone(x, msg=None) x is None
assertIsNotNone(x , msg=None) x is not None
assertIn(x, y, msg=None) x  in e
assertNotIn(x, y, msg=None) x  not in e
assertIsInstance(x, y, msg=None) isinstance(x, y)
assertNotIsInstance(x, y, msg=None) not isinstance(x, y)

Todos esses métodos possuem um msgparâmetro opcional cujo tipo é uma string. Será msgexibido no resultado do teste se o teste falhar.

Os seguintes métodos assert verificam as exceções, avisos e mensagens de log:

Método Verifica isso
assertRaises(exc, fun, *args, **kwds) fun(*args, **kwds) aumenta  exc
assertRaisesRegex(exc, r, fun, *args, **kwds) fun(*args, **kwds) aumenta  exc  e a mensagem corresponde a regex  r
assertWarns(warn, fun, *args, **kwds) fun(*args, **kwds) levanta  avisar
assertWarnsRegex(warn, r, fun, *args, **kwds) fun(*args, **kwds) gera  aviso  e a mensagem corresponde a regex  r
assertLogs(logger, level) with bloco registra no  logger  com um  nível mínimo
assertNoLogs(logger, level) with bloco não loga no logger com nível  mínimo 

A tabela a seguir mostra os métodos assert que realizam verificações mais específicas:

Método Verifica isso
assertAlmostEqual(x, y) round(x-y, 7) == 0
assertNotAlmostEqual(x, y) round(x-y, 7) != 0
assertGreater(x, y) x > y
assertGreaterEqual(x, y) x >= y
assertLess(x, y) x  < e
assertLessEqual(x, y) x  <= e
assertRegex(s, r) r.search(s)
assertNotRegex(s, r) not r.search(s)
assertCountEqual(x, y) xey têm  o  mesmo número de  elementos no mesmo número.

Nos próximos tutoriais, você aprenderá unittestmais detalhadamente sobre os métodos assert e como usá-los de maneira eficaz.

Deixe um comentário

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