可以修改我的源代码而不是新增方法吗
时间: 2024-04-23 13:22:30 浏览: 14
当然可以,你可以将浏览器实例化的代码放到测试用例的类方法 `@classmethod setUpClass(cls)` 中,并将其保存为类变量。这样,在执行测试用例时,只会打开一个浏览器实例,并在所有测试用例执行完成时关闭浏览器。
示例代码如下:
```python
import unittest
from selenium import webdriver
class MyTestCase(unittest.TestCase):
@classmethod
def setUpClass(cls):
# 创建 Chrome 浏览器实例
option = webdriver.ChromeOptions()
option.add_experimental_option("detach", True)
cls.driver = webdriver.Chrome(chrome_options=option)
@classmethod
def tearDownClass(cls):
# 关闭浏览器
cls.driver.quit()
def test_something(self):
# 在浏览器中执行测试代码
self.driver.get("https://www.example.com")
self.assertIn("Example", self.driver.title)
if __name__ == '__main__':
unittest.main()
```
这样做的好处是,可以有效地减少浏览器的打开和关闭次数,提高程序性能,同时也可以避免因为多个浏览器实例同时打开而导致的计算机资源的浪费。