Я работаю над проектом в Runestone, используя test.testEqual ().Я работаю с консолью Anaconda / Spyder и перевожу код обратно в Runestone.Кажется, Python не поддерживает test.testEqual, поэтому я попытался использовать метод TestCase.assertEqual (first, second, msg) в рамках unittest.Мой код выдает сообщение об ошибке: TypeError: assertEqual () отсутствует 1 обязательный позиционный аргумент: 'second'
, но, как показано в приведенном ниже коде, я включаю оба аргумента в вызов.Я новичок в модульном тестировании, поэтому не уверен, куда идти, чтобы решить эту проблему?
переключен с test.testEqual () на TestCase.assertEqual (first, second, msg)
from unittest import TestCase
def distance(x1, y1, x2, y2):
dx = x2 - x1
dy = y2 - y1
dsquared = dx**2 + dy**2
result = dsquared**0.5
return result
TestCase.assertEqual(distance(1,2, 1,2),0,msg='Equal')
TestCase.assertEqual(distance(1,2, 4,6), 5, msg='Equal')
TestCase.assertEqual(distance(0,0, 1,1), 2**0.5, msg='Equal')
Мы ожидаем, что три тестовых случая пройдут на основе их выполнения в консолях Runestone.