用例批量運(yùn)行和測試套件使用 ------之我見
學(xué)習(xí)selenium-webdriver已經(jīng)一段時(shí)間了,最近學(xué)習(xí)到,測試用例的批量執(zhí)行,和測試套件的使用,有點(diǎn)自己的理解,不曉得對(duì)不對(duì),希望大家指正!
寫一個(gè)測試用例 baidu.py
class Baidu(unittest.TestCase):
def setUp(self):
self.driver=webdriver.Firefox()
self. base_url='http:www.baidu.com'
def test_search(self):
driver=self.driver
driver.get(self.base_url+'/')
driver.find_element_by_id('kw').send_keys('VEVb')
driver.find_element_by_id('su').click()
def test_login(self):
driver=self.driver
driver.get(self.base_url+'/')
dr.find_element_by_name('userName').clear()
dr.find_element_by_name('userName').send_keys('user')
dr.find_element_by_name('passWord').clear()
dr.find_element_by_name('password').send_keys('123456')
dr.find_element_by_id('TANGRAM__PSP_26__submit').click()
def tearDown(self):
self.driver.quit()
1.批量執(zhí)行,不使用測試套件的好處
批量執(zhí)行的時(shí)候,我們?cè)谝粋€(gè)測試文件里面執(zhí)行該文件里面的n條測試用例,如上面baidu.py這個(gè)文件,我們可以執(zhí)行執(zhí)行:
if __name__=="__main__":
suite=unittest.TestSuite()
suite.addTest(Baidu("test_search"))
suite.addTest(Baidu("test_login"))
runner=unittest.TextTestRunner()
runner.run(suite)
這樣你可以在一個(gè)文件里面執(zhí)行所有的用例,也可以執(zhí)行自己想要執(zhí)行的那條用例,使用“#”,可以注釋掉當(dāng)前不需要執(zhí)行的那條用例
2.使用測試套件的好處
使用測試套件,我們需要重新建立一個(gè)專門執(zhí)行用例的文件 如 run_case.py
import unittest
from baidu import Baidu
......... #導(dǎo)入相關(guān)模塊
suite=unittest.TestSuite()
suite.addTest(unittest.makeSuite(baidu.Baidu))
runner=unittest.TextTestRunner()
runner.run(suite)
這樣你可以在里面添加一條語句,就可以執(zhí)行整個(gè)文件里面的case,如 suite.addTest(unittest.makeSuite(baidu.Baidu)) 這樣就可以執(zhí)行整個(gè) baidu.py里面的 test_search,test_login這兩條用例了。
以上就是我的理解,希望大家能夠給我指正!
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注