testing - AUTOTOOLS:使用我自己的测试套件而不是默认的
问题描述
我制作了一个 python 测试套件来测试我的项目。我在Makefile.am
变量中添加了:
TESTS = ./launcher.sh
launcher.sh 包含:tests/testsuite.py
当我这样做时./launcher.sh
,我的测试套件会正确执行。但是,当我这样做时make check
,我得到以下输出:
PASS: launcher.sh
============================================================================
Testsuite summary for spider 1.0
============================================================================
# TOTAL: 1
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
如何隐藏默认输出并使用我的测试套件的输出?
解决方案
Automake 手册包含一整章关于测试的内容,这将有助于理解 Automake 的测试套件支持的上下文。此外,重要的是要了解使用 Automake 为您生成 makefile 所达成的部分交易是接受对生成的构建系统的形式和行为的一些限制。
如何隐藏默认输出并使用我的测试套件的输出?
据我所知,您无法隐藏 的默认输出make check
,但可以将测试程序的输出发送到make
的标准输出,而不是重定向到文件。最简单的方法是通过打开 Automake 的选项来启用串行测试工具。这通常通过你的宏serial-tests
的参数来表达:AM_INIT_AUTOMAKE
configure.ac
AM_INIT_AUTOMAKE([serial-tests])
另请注意,不必将您的内容包装tests/testsuite.py
在 shell 脚本中。只需确保它是可执行的(听起来你已经完成了),并在TESTS
变量的值中直接命名它,包括相对路径。
推荐阅读
- autohotkey - Shift,Ctrl,Win 拦截我的自动点击热键
- java - 获取 JschException 的原始原因
- java - 已创建客户端时无法使用 Jersey 2.x 修改身份验证凭据
- kubernetes - 使用 calico 网络处于 Crashloopbackoff 状态的 Coredns
- flutter - Flutter:按钮应该输出一个小部件,但没有
- kubernetes - Kubernetes RBAC 是如何对服务账户实施的?
- reactjs - 有条件地在子组件上渲染父组件屏幕的表单 onSubmit() 调用。(w/react-redux)
- sql - 使用游标代替 While 循环
- python - 尝试在 Odoo 12 中调用向导时出现值错误
- python-3.x - 变量重要性是双向的吗?