不确定这是否是骗局。就这样吧。
我需要编写一些 Python 代码,如下所示:
class TestClass:
def test_case(self):
def get_categories(self):
return [“abc”,”bcd”]
# do the test here
然后有一个测试引擎类扫描所有这些测试类,加载所有 test_case 函数,并为每个调用 get_categories 来确定测试是否属于特定运行的感兴趣组。
问题是 get_categories 不被视为 test_case 的属性,即使我手动分配它
class TestClass:
def test_case(self):
def get_categories(self):
return [“abc”,”bcd”]
# do the test here
test_case.get_categories = get_categories
这只会在 test_case 第一次运行时发生,对我来说太晚了。
这个函数不能在类上运行的原因(或者至少为什么我希望它在每个函数级别也可用)是因为一个 TestClass 可以有多个测试用例。由于这是一个已经存在的测试基础设施,并且类别机制有效(除了不太重要的功能类别场景之外),因此计划中没有重写。
非常感谢语言技巧。