mock

Posted kulankadamei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mock相关的知识,希望对你有一定的参考价值。

概念:mock是python中一个用于支持测试的库,它的主要功能是使用mock对象代替掉指定的python对象,以达到模拟对象的行为的目的。

使用场景:1.模拟后端返回值(客户端已开发完,后端未开发完,但是前端的功能有依赖于后端的返回值)

             2.单元测试中,被测的方法A中有调用其他方法B,防止B方法的逻辑对A方法的测试结果有影响

                  3.有对第三方接口的依赖(像支付)

 

基本用法:

1.导入模块:from unittest import mock

2.创建实例:A = mock.Mock(return_value="这里写你想返回的值")  (A为要模拟返回值的方法,不需要加(),只写方法名)

 或者如果调用的函数首次超时后,再次调用成功,则可以用 A =  mock.Mock(side_effect=[TimeoutError,"200"])

3,一些其他方法

技术分享图片

用法:A.assert_called_with(A的参数)

以上是关于mock的主要内容,如果未能解决你的问题,请参考以下文章

一文教会你mock(Mockito和PowerMock双剑合璧)