如何为单元测试进行一次设置

2024-03-28 15:59:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下两个单元测试:

import unittest
from unittest import TestCase


class TestUM(unittest.TestCase):

    def setUp(self):
        self.client = SeleniumClient()

    def test_login(self):
        self.client.login()
        self.assertIn("my-data", self.client.driver.current_url)
        print ('Log in successful.')

    def test_logout(self):
        self.client.logout()
        print ('Log out successful.')


if __name__ == '__main__':
    unittest.main()

但是,它会执行setUp两次——每个单元测试一次。有没有一种方法可以跨TestUM的所有单元测试进行一次设置?如果是,我该怎么做?你知道吗


Tags: testimportselfclientlogdefsetuplogin
1条回答
网友
1楼 · 发布于 2024-03-28 15:59:26

您可以使用setupClass来实现:

class TestUM(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.client = SeleniumClient()

documentation,在类中的测试运行之前只调用一次此方法。你知道吗

相关问题 更多 >