这是我在这个论坛上的第一个问题!我正试图在另一个文件中为一个类编写一个测试文件(All in Python btw),但我得到了一个NameError:全局变量名称此处未定义。我会给你看一些我正在做的事情的示例代码。
import unittest
from File import *
class TestFile(unittest.TestCase):
def object_test_setup(self, elements):
s = CustomClass() #from imported File, have to import items this way.
for item in elements:
a.insert(item)
return (a)
def test_contains_tuple_element(self):
'''Return True iff CustomClass contains tuple element'''
custom_object = object_test_setup([1, "string!", ("TUP", "LE")])
element = ("TUP", "LE")
self.assertTrue(custom_object.__contains__(element)) # __contains__ is defined in File
是的,所以对象初始化得很好,导入文件中的所有方法都在对象上工作,但出于某种原因,我的NameError说NameError: global name 'object_test_setup' is not defined
我不明白,因为所有导入的东西都在那个文件中工作,我相信我导入正确,全局NameError来自类本身的一个函数。为什么不起作用?非常感谢所有的帮助!
非常感谢,Thomas
这是一个类方法,所以您需要像这样调用它:
custom_object = self.object_test_setup([1, "string!", ("TUP", "LE")])