pytest fixture 用于teardown工作

fixture通过scope参数控制setup级别,setup作为用例之前前的操作,用例执行完之后那肯定也有teardown操作。这里用到fixture的teardown操作并不是独立的函数,用yield关键字呼唤teardown操作。

举个例子:

 

 输出:

说明:yield

yieldfixture中起到了唤起teardown的作用,同时也可以和return一样返回值。
yieldreturn的区别是:
return执行完成,该函数终止;
yield在返回结束后,后续的代码仍可执行。

yield 遇到异常

1、如果其中一个用例出现异常,不影响 yield 后面的 teardown 执行,运行结果互不影响,并且全部用例执行完之后,yield 呼唤 teardown操作。

输出

 2、如果在setup就异常了,那么是不会去执行yield后面的teardown内容了

 输出:

 

 

posted @ 2022-01-20 13:23  keena_jiao  阅读(156)  评论(0编辑  收藏  举报