我按以下方式编写测试用例。
# content of test_class.py
class TestClass(object):
def test_one(self):
x = "this"
assert 'h' in x
def test_two(self):
x = "hello"
assert hasattr(x, 'check')
Run Code Online (Sandbox Code Playgroud)
test_two 依赖于 test_one,因此执行的顺序很重要,当您将测试分组到类中时,强制执行测试执行顺序的约定是什么?
默认情况下,测试将按照类/模块中定义的顺序执行。在你的情况下:
test_class.py::TestClass::test_one PASSED
test_class.py::TestClass::test_two PASSED
Run Code Online (Sandbox Code Playgroud)
考虑到一般来说,编写相互依赖的测试是一种不好的做法。如果以后的测试并行运行,您将拥有flakiness,或者如果您安装了用于随机测试执行的插件,例如https://pypi.python.org/pypi/pytest-randomly,或者如果您离开项目,其他人将拥有调试突然开始失败的测试。
我建议将两项测试合并为一项。重要的是你有一些测试场景。如果您对代码仍然有同样的信心,那么进行 2 次测试或 1 次测试是否重要?
| 归档时间: |
|
| 查看次数: |
6271 次 |
| 最近记录: |