每次执行多个测试用例文件总是会执行多次打开浏览器、关闭浏览器的操作,使得UI自动化测试效率降低。但是如果把所有的用例放在一个类文件里,显得很冗余且不灵活。
所以,可以在setUp方法前定义一个全局dr = webdriver.Chrome(),在每次用例执行结束后执行刷新一次浏览器操作或者不刷新,视项目而定。
定义setUp和tearDown方法:
import unittest
from selenium import webdriver
class TestClass(unittest.TestCase):
#设置全局的driver
dr = webdriver.Chrome()
def setUp(self, driver=dr):
self.driver = driver
self.driver.maximize_window()
#每个测试用例文件执行完都会刷新一下,也可以写在每个用例的最后
'''def tearDown(self, driver=dr):
self.driver = driver
try:
self.driver.refresh()
except Exception as e:
print('END')'''
登录测试用例
from selenium.webdriver.common.by import By
from base import Page
import time
import time, unittest
from test_case.models import myunit, function
from test_case.pageObj.loginPage import loginPage
#继承setUp和tearDown方法的类
class T

本文介绍了如何使用Python结合Selenium和unittest框架,在执行多个测试用例时仅进行一次打开浏览器、登录及关闭操作,提高UI自动化测试效率。通过设置setUp和tearDown方法,以及调整测试用例文件名顺序,实现登录与退出的优化。

3641

被折叠的 条评论
为什么被折叠?



