问题标签 [doctest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 Sphinx 扩展自动生成 doctest 输出
我想我错过了关于 doctest 的 sphinx 扩展的一些信息。
文档中的典型示例是:
有没有办法让 sphinx1
自动生成输出(这里:)?
据我了解,可以运行:
它具有测试代码片段的效果,并将实际输出与预期输出进行比较。例如,如果您有
doctest 会警告你1
它在期待的时候得到了3
。
相反,我希望 sphinx 将真实输出单独插入到我的文档字符串或 .rst 文件中。例如,如果我们有类似的东西:
我希望当我们make doctest
使用选项运行时,它将文档字符串更改为:
我相信这是可能的,而且会非常方便!
python - Python doctest 字符串转义问题
对于这个 doctest:
我得到这个结果:
测试应该通过,因为字符串是等价的。但是,在“Got:”字符串中,它已将一些\xHH
转义转换为相应的 ascii 字符,但对于“Expected:”字符串并没有这样做。
如果我在文档字符串的请求下更改r'''
为'''
,我会改为:
如何让两个字符串在 doctest 中匹配?
python - 用于测试参数解析而不用 os.popen() 污染文档字符串的 shell 脚本的 Python doctest
有没有办法编写 python doctest 字符串来测试旨在从命令行(终端)启动的脚本,该脚本不会使用 os.popen 调用污染文档示例?
在不使用 popen 的情况下运行 doctest.testmod() 只会导致测试失败,因为脚本是在 python shell 而不是 bash(或 DOS)shell 中运行的。
LLNL的高级 Python 课程建议将脚本放在与 .py 模块分开的文件中。但随后 doctest 字符串仅测试模块,没有 arg 解析。而且我的 os.popen() 方法污染了示例文档。有没有更好的办法?
python - Doctest 的输出与 shell 的输出不同
在 doctest 和 shell 中使用相同的代码会产生不同的输出。
我有一个名为 a() 的函数,它运行了一些测试。
这些相同的测试用于 doctest (test() )。
使用 a() 我得到 OBJECT-BLANKLINE-OBJECT 而 test() 给我一个错误并且只显示第一个 OBJECT。
这是 doctest 模块中的缺陷吗?
这是顶部带有 a() 和 test() 的整个文件:
这是我使用 a() 和 test() 得到的输出:
我还想为我之前问得很糟糕的问题道歉。
希望这个可以帮助我和其他人。
python - 相当于 Delphi 中的 Python DocTest?
Delphi 是否有任何等效的 DocTest。我使用 DUnit,但我喜欢 Python DocTest 的想法。我在这里看到了一些答案,但我认为,对于简单的功能,像 DocTest 这样的可能没问题。我的目标是在编写函数时在注释标题中定义我的测试。像 :
python - 是否可以仅在模块中使用 doctest 测试特定功能?
我正在尝试使用 doctest 模块在 Python 中进行测试。目前我做
- 编写函数的测试。
- 实现功能代码。
- 如果测试通过,请编写更多测试和更多代码。
- 完成该功能后,继续执行下一个功能。
因此,在同一个模块中的 3 或 4 个(独立)函数和许多测试之后,我得到了 doctest 的巨大输出。这有点烦人。
有没有办法告诉 doctest “不要测试函数a()
,b()
并且c()
”,以便它只运行未标记的函数?
我只找到了doctest.SKIP
标志,这不足以满足我的需要。我必须把这个标志放在很多行中。如果我想再次检查一个标记的函数,我将不得不手动检查代码并删除我在里面设置的任何标志。
python - doctests 中的链式异常
我编写了一个assert_raised
用于测试的上下文管理器,它检查是否引发了预期的异常,如果没有引发AssertionError
. 我还编写了一个 doctest 来测试它,但是 doctest 一直失败,我不完全确定为什么。这是文档测试:
引发的实际异常是:
我认为实现并不重要,但如果我在那里做错了什么(没有 doctest):
python - web2py:创建传递参数的文档测试
希望是一个简单的问题,但文档或 web2py 书中似乎没有涵盖它......
我有一个看起来像这样的 web2py 控制器方法:
根据文档,参数作为请求变量传入
有什么方法可以构建一个 doctest(与方法定义内联)来评估调用的返回值,例如mymethod(param1=9, param2='a', param3=3.7)
?
提前致谢
python - 为什么我要在重组文本中编写文档测试?
另一种问这个问题的方法:如果我用 reST 编写文档测试,我可以将它用于 Sphinx 或其他自动文档工作吗?
背景:我不知道如何使用 Sphinx,也没有太多的 reST 经验,所以我想知道是否可以在除 Sphinx 之外的其他地方使用 reST 编写的文档测试?
python - prevent sphinx from executing inherited doctests
We've made a library which uses massively (with inheritance) numpy's MaskedArrays. But I want to run sphinx's make doctest
without testing the inherited methods from numpy, because they make round about 100 failures.
This lookls like this:
And now that our library also supports numpy's functions, therefore we use:
If I disable self.__doc__ = getattr(MaskedArray, func_name).__doc__
, the failures of make doctest
disappear. But I'd like to retain the inherited documentation; so that the users can still use mylibrary.min?
in ipython.
Anyone an idea how I can prevent sphinx from executing this "inherited" doctests?