AttributeError:'模块'对象没有属性'添加'

时间:2017-10-03 08:34:40

标签: python python-2.7 unit-testing

我正在学习如何编写单元测试。 app.py:

class MyClass:
    def add(self):
        return 2+2

app_test.py:

import app
import unittest

class TestMyClass(unittest.TestCase):
    def test_add(self):
        self.assertEqual(app.add(), 4)

if __name__ == '__main__':
    unittest.main()

运行命令:python -m unittest app_test.TestMyClass

错误:

Traceback (most recent call last):
  File "app_test.py", line 6, in test_add
    self.assertEqual(app.add(), 4)
AttributeError: 'module' object has no attribute 'add'

1 个答案:

答案 0 :(得分:1)

当您的测试是对象方法时,您的测试会直接调用add()。首先创建一个对象。这应该有用。

from app import MyClass
import unittest

class TestMyClass(unittest.TestCase):
    def test_add(self):
        o = MyClass()
        self.assertEqual(o.add(), 4)