Ошибка при запуске Unittest: AttributeError: module 'math' has no attribute 'add'

math.py

def add(x, y=4):
    return x + y

test_math.py

import unittest
import math


class TestMath(unittest.TestCase):

    def test_add(self):
        result = math.add(5, 7)
        self.assertEqual(result, 12)

Ответы (1 шт):

Автор решения: Пушистик

Модуль math - это стандартный модуль Python, который будет импортироваться вместо вашего math.py. Переименуйте math.py в, например, math_.py. И, да, не очень правильно задавать значение переменной прямо в def:

def add(x, y=4):
    return x + y

Лучше делайте так:

def add(x, y):
    return x + y


# вызов функции
print(add(x, 4)) # вместо 'x' подставьте Ваше число
→ Ссылка