python unittest的执行顺序
我需要为测试设置执行顺序,因为我需要先验证一些数据。可以下订单吗?
class OneTestCase(unittest.TestCase): def setUp(self):
# something to do
def test_login (self):
# first test
pass
def test_other (self):
# any order after test_login
def test_othermore (self):
# any order after test_login
if __name__ == '__main__':
unittest.main()
谢谢
回答:
最好不要这样做。
测试应该是独立的。
要做您最想做的就是将代码放入测试调用的函数中。
像那样:
def assert_can_log_in(self): ...
def test_1(self):
self.assert_can_log_in()
...
def test_2(self):
self.assert_can_log_in()
...
甚至拆分测试类,并将断言放入setUp函数中。
class LoggedInTests(unittest.TestCase): def setUp(self):
# test for login or not - your decision
def test_1(self):
...
当我拆分班级时,我经常编写更多更好的测试,因为测试被拆分,并且在应该测试的所有情况下我都能看到更好的结果。
以上是 python unittest的执行顺序 的全部内容, 来源链接: utcz.com/qa/410663.html