本文介绍了更改 Python 中单元测试的顺序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何使 Python 中的单元测试(使用 unittest
)按照在文件中指定的顺序运行?
How can I make it so unit tests in Python (using unittest
) are run in the order in which they are specified in the file?
推荐答案
您可以通过设置自定义比较函数来更改默认排序行为.在 unittest.py 中,您可以找到类变量 unittest.TestLoader.sortTestMethodsUsing
,该变量默认设置为内置函数 cmp
.
You can change the default sorting behavior by setting a custom comparison function. In unittest.py you can find the class variable unittest.TestLoader.sortTestMethodsUsing
which is set to the builtin function cmp
by default.
例如,您可以通过执行以下操作来恢复测试的执行顺序:
For example you can revert the execution order of your tests with doing this:
import unittest
unittest.TestLoader.sortTestMethodsUsing = lambda _, x, y: cmp(y, x)
这篇关于更改 Python 中单元测试的顺序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!