unittest批量執行測試用例


現有四個測試用例分別在兩個.py文件中,如何執行這些文件?

unittest中有這樣處理:unittest.TestLoader().discover()

第一個文件test_case1.py

from selenium import webdriver
import unittest

class Baidu_Link(unittest.TestCase):

    def setUp(self) -> None:
        self.driver = webdriver.Chrome()
        self.driver.get("http://www.baidu.com/")


    def tearDown(self) -> None:
        self.driver.quit()


    def test_baidu_news(self):
        ''''點擊百度首頁的新聞,看是否可以正常跳轉'''
        self.driver.find_element_by_link_text("新聞").click()
        self.assertEqual(self.driver.current_url, "http://news.baidu.com/")

    def test_baidu_map(self):
        '''點擊百度首頁的地圖,看是否可以正常跳轉'''
        self.driver.find_element_by_link_text("地圖").click()
        self.assertEqual(self.driver.current_url, "https://map.baidu.com/@13225221.26,3748918.53,12z")

if __name__ == "__main__":
    unittest.main(verbosity=2)

  第二個.py文件:test_case2.py

import unittest
from selenium import webdriver

class Baidu_search(unittest.TestCase):

    def setUp(self):
        self.driver = webdriver.Chrome()
        self.driver.get("http://www.baidu.com")

    def tearDown(self):
        self.driver.quit()

    def test_baidu_enbale(self):
        '''測試百度首頁的輸入框可編輯'''
        su = self.driver.find_element_by_id("kw")
        self.assertTrue(su.is_enabled())

    def test_baidu_search(self):
        '''測試百度首頁的輸入框可以搜索'''
        search = self.driver.find_element_by_id("kw")
        search.send_keys("大數據")
        self.driver.find_element_by_id("su").click()
        self.assertEqual(search.get_attribute("value"), "大數據")

if __name__ == "__main__":
    unittest.main(verbosity=2)

這兩個文件怎么批量執行?

建立新的.py文件alltest.py

import unittest
import os

def allTest():
    suite = unittest.TestLoader().discover(
        start_dir=os.path.dirname(__file__),#文件地址
        pattern="test_*.py",#文件類型
        top_level_dir=None)
    return suite

def run():
    unittest.TextTestRunner(verbosity=2).run(allTest())

if __name__ == "__main__":
    run()

  執行結果:

test_baidu_map (test_case1.Baidu_Link)
點擊百度首頁的地圖,看是否可以正常跳轉 ... ok
test_baidu_news (test_case1.Baidu_Link)
'點擊百度首頁的新聞,看是否可以正常跳轉 ... ok
test_baidu_enbale (test_case2.Baidu_search)
測試百度首頁的輸入框可編輯 ... ok
test_baidu_search (test_case2.Baidu_search)
測試百度首頁的輸入框可以搜索 ... ok

----------------------------------------------------------------------
Ran 4 tests in 40.277s
OK

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM