测试时用赝品(mock、stub等)替换真实对象。

fudge的Python项目详细描述


完整的文档可在https://fudge.readthedocs.org/en/latest/

fudge是一个python模块,用于使用假对象(mock和stub)来测试真实对象。

在可读的python代码中,声明哪些方法可用于您的伪和 如何称呼他们。然后将其注入应用程序并启动 测试。这种声明性的方法意味着您不必录制和回放 在运行代码之后,您不必检查您的赝品。如果是假的 对象的使用不正确,则您将看到一条信息丰富的异常消息 带着指向罪犯的痕迹。

下面是如何测试发送的代码的快速预览 不实际发送电子邮件的电子邮件:

@fudge.patch('smtplib.SMTP')
def test_mailer(FakeSMTP):
    # Declare how the SMTP class should be used:
    (FakeSMTP.expects_call()
             .expects('connect')
             .expects('sendmail').with_arg_count(3))
    # Run production code:
    send_mail()
    # ...expectations are verified automatically at the end of the test

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java组织。openqa。硒。遥远的UnreachableBrowserException如何定义EXE路径?   java Camel AdviceWith不使用指定文件替换端点   基于字符串的java图像加载   Java中的启发式算法,计算8个谜题状态的线性冲突   java为什么不支持文件。probeContentType返回null   JPA@EntityListeners、@PrePersist和Spring@RepositoryEventHandler、@HandleBeforeSave之间的java差异   可能前缀的Java字符串到字符串[]   安装rJava | Makefile时发生java错误。全部:38:target’libjri的配方。所以他失败了   Java公共静态void main()   java如何覆盖txt文件中的某些单词   java如何获得循环中生成的字符值之和?   java Log4j创建另一个具有相同属性的appender   java如何在从Axis2 Web服务客户端通过代理服务器调用Web服务时设置代理设置?   在Windows上安装Elasticsearch时发生java错误   java如何向EditText组件添加TextChangedListener?