python2.7 unittest setup

之前一直认为unittest的setUp方法只在TestCase被初始化的时候执行一次 之后的每个test方法中如果对setUp中的相关属性进行了更改的话 会影响到其它的test方法 可能是之前写的测试太少了 或者说几乎没有 最近开始尝试TDD 所以写的有点多 继而发现了那个绕不过去的坎儿

来段代码说明一下吧:

import unittest


class TestDemo(unittest.TestCase):
    
    def setUp(self):
        self.array = range(10)

    def testpop(self):
        self.array.pop()
        self.assertEqual(self.array, range(9))

    def testAppend(self):
        self.array.append(11)
        self.assertEqual(self.array, range(9) + [11,])

上面这个例子中 testpop是可以通过测试的 但是testAppend确报错了 原因就是上来就说的setUp方法的调用时机 其实在每次跑一个testcase的时候 都会先调用setUp方法 相应地 tearDown方法 也会在每个测试用例结束后调用

转载于:https://my.oschina.net/pengfeix/blog/147585

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值