栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在unittest的测试之间持久变量变化?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在unittest的测试之间持久变量变化?

正如一些评论所回响的那样,以这种方式构造测试可能是测试本身的设计缺陷,您应该考虑对其进行重组。但是,如果您要执行此操作,并且依赖于所使用的测试运行程序以字母(看似)顺序执行它们的事实,那么我建议以下内容。

类似于@Matthias所说的,但是对于以后您可能决定从该类继承的情况,我会做不同的事情。

from unittest import TestCase, main as unittest_mainclass TestSimpleFoo(TestCase):    foo = 'bar'    def setUp(self):        pass    def test_a(self):        self.assertEqual(self.__class__.foo, 'bar')        self.__class__.foo = 'can'    def test_f(self):        self.assertEqual(self.__class__.foo, 'can')if __name__ == '__main__':    unittest_main()

此答案与您接受的@Matthias答案之间的区别是类的显式声明与查找该类引用的区别。

TestSimpleFoo vs self.__class__

我更喜欢动态性,这样我以后就可以继承测试,并背对背运行两个测试类,并且两者之间没有任何交叉。因为如果您选择从此类继承,则显式命名类引用将导致两个测试类都针对该引用运行,而不是针对各自的类运行。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/652530.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号