我编写了一个 python 模块,其中大部分都包裹在@numba.jit
装饰器中以提高速度。我还为这个模块编写了很多测试,我运行(在 Travis-CI 上)使用py.test
. 现在,我正在尝试查看这些测试的覆盖范围,使用pytest-cov
,这只是一个依赖的插件coverage
(希望将所有这些集成到工作服中)。
不幸的是,似乎numba.jit
在所有这些函数上使用会让人coverage
认为这些函数从未被使用过——情况确实如此。所以我的测试基本上没有报告覆盖率。这并不是一个巨大的惊喜,因为numba
正在获取该代码并对其进行编译,因此代码本身实际上从未被使用过。但我希望有时你会在 python 中看到一些魔力......
有没有什么有用的方法可以结合这两个优秀的工具?如果做不到这一点,是否有任何其他工具可以用来测量 numba 的覆盖率?
[我做了一个最小的工作示例来显示这里的区别。)