0

这是我在这个论坛上的第一个问题!我正在尝试为另一个文件中的一个类编写一个测试文件(All in Python btw),我得到一个 NameError: global variable name here undefined。我将向您展示我在做什么的一些示例代码。

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 来自类本身的函数。为什么这行不通?非常感谢所有帮助!

非常感谢,托马斯

4

1 回答 1

2

这是一个类方法,所以你需要像这样调用它:

custom_object = self.object_test_setup([1, "string!", ("TUP", "LE")])
于 2013-02-15T08:01:08.117 回答