如何处理耗时的测试

时间:2015-07-24 12:37:31

标签: python nose nosetests

我的测试运行时间差异很大。大多数将花费不到一秒钟,有些可能只需几秒钟,其中一些可能需要几分钟。

我可以在我的Nosetests中以某种方式指定吗?

最后,我希望能够只运行我的一部分测试,例如不到1秒(通过我指定的预期运行时估计)。

1 个答案:

答案 0 :(得分:0)

查看有关鼻子测试的属性插件的this write up,您可以在其中手动将测试标记为@attr('slow')@attr('fast')。之后您可以使用nosetests -a '!slow'来快速运行测试。

如果您可以自动执行此操作会很棒,但我担心您必须编写额外的代码才能动态执行此操作。如果你正在快速开发,我会在启用xunit xml输出的情况下运行(跟踪每个测试的运行时)。您的测试模块可以动态读取先前运行的xml输出文件,并相应地设置测试的属性设置以过滤掉快速测试。这样你就不必手动完成,唉有更多工作(你必须至少运行一次所有测试)。