最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python中doctest如何嵌入源码?

    正文概述    2020-04-21   185

    之前看过文档测试的小伙伴,已经了解到了它的妙用。doctest属于python文档测试中的模块,有两种使用方式。今天就doctest嵌入源码,小编为大家进行详细讲解。


    下面的代码只有一个函数,里面嵌入了两个doctest测试用例,文件名为naruto.py:

    '''
    这个例子展示如何在源码中嵌入doctest用例。
    '>>>' 开头的行就是doctest测试用例。
    不带 '>>>' 的行就是测试用例的输出。
    如果实际运行的结果与期望的结果不一致,就标记为测试失败。
    '''
    def multiply(a, b):
        """
        >>> multiply(4, 3)
        12
        >>> multiply('a', 3)
        'aaa'
        """
        return a * b
    if __name__=='__main__':
        import doctest
        doctest.testmod(verbose=True)


    有两个地方可以放doctest测试用例,一个位置是模块的最开头,另一个位置是函数声明语句的下一行(就像上面的例子这样)。除此之外的其它地方不能放,放了也不会执行。

    verbose参数,如果设置为True则在执行测试的时候会输出详细信息。默认是False,表示运行测试时,只有失败的用例会输出详细信息,成功的测试用例不会输出任何信息。

    将上面提到的文件放在D盘(或者其他你觉得方便的目录),打开cmd命令行,切换到naruto.py所在的目录(我的在D盘),输入下面代码:


    python naruto.py


    输出结果为:


    Trying:
        multiply(4, 3)
    Expecting:
        12
    ok
    Trying:
        multiply('a', 3)
    Expecting:
        'aaa'
    ok
    1 items had no tests:
        __main__
    1 items passed all tests:
       2 tests in __main__.multiply
    2 tests in 2 items.
    2 passed and 0 failed.
    Test passed.


    上面启动测试的方式是在__main__函数中调用了doctest.testmod()方法。

    如果__main__函数有其他用途,不方便调用doctest.testmod()方法,那么可以用另外一种执行测试的方法,在cmd中输入:


    $ python -m doctest naurto.py 
    $ python -m doctest -v naruto.py


    以上就是python中doctest嵌入源码的方法。更多Python学习推荐:起源地模板网教学中心


    起源地下载网 » python中doctest如何嵌入源码?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元