Dea*_*nes 4 python unit-testing
我有一个测试装备,有三组测试用于数独求解器:
由于步骤3需要一段时间,我正在寻找一种方法,只有在前面的所有步骤都通过后才能进入下一步.是否可以使用单元测试框架来完成此操作,还是更容易编写自己的控件结构?
doctest如果您希望使用doctest,请将其视为Python IDLE(请参阅doctest文档以获取有关如何准备测试的提示),将先前测试的结果分配给某些变量,然后使用条件检查来确定是否要执行其他测试.就像那样.
不幸的是,它与此无关unittest.
unittestunittest当谈到时unittest,您仍然可以使用-f(--failfast)选项从命令行调用它,因此它会在第一个错误或失败时停止测试运行.
unittest支持根据某些条件(参见文档)跳过测试,或者当您知道测试被破坏并且您不想将其视为失败时.请参阅基本跳过示例:
class MyTestCase(unittest.TestCase):
@unittest.skip("demonstrating skipping")
def test_nothing(self):
self.fail("shouldn't happen")
@unittest.skipIf(mylib.__version__ < (1, 3),
"not supported in this library version")
def test_format(self):
# Tests that work for only a certain version of the library.
pass
@unittest.skipUnless(sys.platform.startswith("win"), "requires Windows")
def test_windows_support(self):
# windows specific testing code
pass
Run Code Online (Sandbox Code Playgroud)
有用吗?