Python Glossary English

все Python 3до 3.12unittestпонятие

unittest.TestCase.assertEquals

удалено

Старые имена методов проверки TestCase: assertEquals, failUnless, assert_ и другие. Удалены в Python 3.12 — используйте assertEqual, assertTrue и их ровесников.

Синтаксис

self.assertEquals(a, b)  # до 3.12

У многих методов проверки было по два-три имени. Лишние объявили устаревшими в Python 3.1–3.5 и в 3.12 убрали. Как переписать: failUnless и assert_ → assertTrue; failIf → assertFalse; failUnlessEqual и assertEquals → assertEqual; failIfEqual и assertNotEquals → assertNotEqual; failUnlessAlmostEqual и assertAlmostEquals → assertAlmostEqual; failIfAlmostEqual и assertNotAlmostEquals → assertNotAlmostEqual; failUnlessRaises → assertRaises; assertRegexpMatches → assertRegex; assertRaisesRegexp → assertRaisesRegex; assertNotRegexpMatches → assertNotRegex. Недокументированный assertDictContainsSubset убран без замены: проверьте self.assertLessEqual(sub.items(), d.items()). Массовую замену делает утилита teyit.

Примеры

# Python 3.12+
import unittest
try:
    unittest.TestCase().assertEquals(1, 1)
except AttributeError as e:
    print(type(e).__name__)  # → AttributeError
# Python 3.12+
import unittest
tc = unittest.TestCase()
tc.assertEqual(2 + 2, 4)
tc.assertTrue([1])
tc.assertRegex('python', 'th')
tc.assertLessEqual({'a': 1}.items(), {'a': 1, 'b': 2}.items())
print('ok')  # → ok
import unittest
tc = unittest.TestCase()
tc.assertEquals(2 + 2, 4)
tc.failUnless([1])
tc.assertRegexpMatches('python', 'th')
print('ok')  # → ok

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности