Я впервые пытаюсь написать модульный тест на Python.У меня есть простая функция, подобная этой:
def sum_num(a, b):
return a+b
Я хочу выполнить модульный тест, чтобы проверить, что вход (a, b) не равен нулю, а выход не равен нулю.
import unittest
class SumTest(unittest.TestCase):
def test_sum_output_not_null(self):
self.assertTrue(add_num(3,4))
def test_sum_input_not_null(self):
# How to check input (a and b) is not None ?
self.assertIsNotNone(a)
...
suite = unittest.TestLoader().loadTestsFromTestCase(SumTest)
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)
Я получаю ошибки в модульном тесте ..
test_sum_input_not_null (__main__.SumTest) ... ERROR
test_sum_output_not_null (__main__.SumTest) ... ok
======================================================================
ERROR: test_sum_input_not_null (__main__.SumTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "<command-1933936>", line 7, in test_sum_input_not_null
self.assertIsNotNone(a)
NameError: name 'a' is not defined
----------------------------------------------------------------------
Ran 2 tests in 0.000s
FAILED (errors=1)
Out[4]: <unittest.runner.TextTestResult run=2 errors=1 failures=0>
Как проверить, что a и b не равны NULL?Также, вероятно, хотите проверить, что a и b также являются целыми числами.Я где-то читал о настройке ().Нужно ли это делать для проверки входных данных для функции?