如何设置python文件的属性?

2024-04-25 22:39:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道如何为类设置属性,但找不到如何为文件设置属性。。在

flow = ['1','4','5','2']

def test_generator(test):
    def test_parser(self):
        print test
    return test_parser

class API_tests(unittest.TestCase):
        pass


for test in flow:
    test_name = 'test_%s' % test
    test = test_generator(test)
    setattr(API_tests, test_name, test)

这个,会有用的。在

我想将setattr()上的API_测试替换为file as object,而不是类,这样这个文件将附加我动态设置的函数(test_generator X 4)

我在命令行上运行'nosetests-v'时的预期结果是它将显示“4个测试通过”

这个问题可以在其他作品中找到:如何将当前文件作为一个对象

谢谢


Tags: 文件nametestselfapiparserreturn属性
1条回答
网友
1楼 · 发布于 2024-04-25 22:39:23

与其在模块名称空间中动态地创建测试函数(我认为这是您的意图),不如对测试生成器使用nosetest支持。在

如果nose检测到一个生成器,并且该生成器生成一个callable和callable所需的任何参数,它将迭代它并为您运行每个测试。在

可以重写你的例子

def check_flow_value(val):
    # assert something about val
    assert True

def test_flows():
    flow = ['1','4','5','2']
    for val in flow:
        yield check_flow_value, val

鉴于此,nose将进行4次测试

相关问题 更多 >

    热门问题