python setup_python--setUp()和tearDown()应用

setUp:表示前置条件,它在每一个用例执行之前必须会执行一次

setUp可以理解为我们需要自动化测试时,需要打开网页窗口,输入对应测试地址,这一些属于前置条件。

tearDown:表示释放资源,它在每次用例执行完之后会执行一次

tearDown可以理解为我们测试完毕后,需要关闭浏览器。

以下示例演示setUp和tearDown的执行顺序:

#coding:utf-8

importunittestclassXseq(unittest.TestCase):defsetUp(self):print "前置测试条件"

deftearDown(self):print "结束测试条件"

deftestadd(self):print ‘1+1=‘,1+1

deftestsub2(self):print ‘3-2=‘,3-2

deftestsub1(self):print ‘3-3=‘,3-3

defmul(self):print ‘3*1‘,3*1

if __name__=="__main__":

unittest.main()

运行结果为:

由此可看到运行的顺序:

1. 每次执行函数方法时,必须先执行一次setUp()函数,执行完一个函数方法后,必须再执行一次tearDown()函数

2. 执行函数的时候有序号时,例如testxx1,testxx2 会根据序号来进行执行

3. 当函数方法不是以test开头是,不执行该方法。

若我想要改变setUp()在所有用例执行之前只执行一次,和tearDown()函数在所有用例执行之后只执行一次的话

1. 需要使用python中的@classmethod内置装饰器

2. 需要把函数名改为setUpClass(cls) / tearDownClass(cls)

以下为示例:

#coding:utf-8

importunittestclassXseq(unittest.TestCase):

@classmethoddefsetUpClass(cls):print "前置测试条件"@classmethoddeftearDownClass(cls):print "结束测试条件"

deftestadd(self):print ‘1+1=‘,1+1

deftestsub2(self):print ‘3-2=‘,3-2

deftestsub1(self):print ‘3-3=‘,3-3

defmul(self):print ‘3*1‘,3*1

if __name__=="__main__":

unittest.main()

运行结果为:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值