测试用例setup和teardown


前言:最近在学pytest、故做点笔记。

1、学过unittest的都知道setup和teardown。前置和后置的意思。(在每个用例前后执行一次。)

  比之用的少一点的还有setupclass和teardownclass,需要配合@classmethod装饰器一起使用。(在所有用例前后总共各执行一次。)

2、pytest也有类似的语法。并且种类更多。按照用例运行级别可以分为以下几类:

  *模块级(setup_module/teardown_module):开始于模块始末,作用于全局(总用各执行一次。)

  *函数级(setup_function/teardown_function):仅对函数用例生效。(即不在类中。每个函数执行一次)

  *类级(setup_class/teardown_class):只在类中前后运行一次。(在类中)

  *方法级(setup_method/teardown_method):开始于方法始末(在类中。每个方法执行一次)

  *类里面的(setup/teardown):运行在调用方法的前后(每个方法执行一次)

  注:类里面按优先级排序的话:setup_class > setup_method > setup >用例> teardown > teardown_method > teardown_class(即执行顺序)

  

3、下面通过几个例子加深一下印象:

  3.1:

  

  运行结果如下:

  

  由上图也可知:在类里面。运行顺序为:setup_class > setup_method > setup >用例> teardown > teardown_method > teardown_class

  3.2:

  

  结果执行如下:

  

  通过上图。我们可以得知。setup/teardown_module优先级是最大的。其次。函数里面用到的setup/teardown_function与类里面的setup/teardown_class互不干涉,互不影响。

  具体使用就看业务来了!

 

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM