繁体   English   中英

Pytest:在超类中运行所有测试

[英]Pytest: Run all tests in superclass

我想运行从另一个类继承的所有测试方法。 有办法吗? 例如,对于以下代码,我希望pytest测试从Test继承的TestTwoTestTwelve所有测试方法。

class Test:

    def __init__(self, n):
        self.n = n

    def test_even(self):
        assert self.n % 2 == 0

    def test_not_big(self):
        assert self.n < 100


class TestTwo(Test):

    def __init__(self):
        super(TestTwo, self).__init__(2)


class TestTwelve(Test):

    def __init__(self):
        super(TestTwelve, self).__init__(12)

但是, pytest抱怨存在__init__构造函数。 我想要一种避免这种情况的方法。

总体目标是使测试更具模块化,以便我可以在多个类上测试类似的问题。

pytest重用测试方法的正确用法是使用Fixtures 这是一个相关的问题示例解决方案

感谢@hoefling在评论中指出__init__不利于测试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM