python doctest可以忽略一些输出行吗?

发布于 2021-01-29 17:39:56

我想写一个像这样的doctest:

"""
>>> print a.string()
          foo : a
          bar : b
         date : <I don't care about the date output>
          baz : c
"""

有什么办法吗?我认为切换到单元测试会更有意义,但我很好奇是否可以指定不适合doctest中的测试的输出范围。

谢谢!

关注者
0
被浏览
52
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    使用doctest.ELLIPSIS,您可以...用来表示“在此处匹配任何字符串”。您可以doctest使用doctest指令设置选项,以使其仅在一个测试用例中处于活动状态:在线文档中的一个示例是:

    >>> print range(20) # doctest:+ELLIPSIS
    [0, 1, ..., 18, 19]
    

    如果您希望doctest选项始终处于活动状态,则可以将其作为optionflags=参数传递给您使用的任何doctest函数,例如doctest.testfile。(您可以使用|运算符对这些选项标志进行位或它们传递)。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看