unittest 參數化2--parameterized(蟲師《selenium3自動化測試實戰--基於Python語言筆記37》)


parameterized是python的一個參數庫,支持unittest,Nose,pytest單元測試框架

1.安裝parameterized(https://github.com/wolever/parameterized)

DOS上直接輸入: python -m pip install parameterized即可在線安裝

 2.以百度搜索為例:

import unittest
from time import sleep
from parameterized import parameterized
from selenium import webdriver


class TestBaidu(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.driver = webdriver.Chrome()
        cls.base_url = "https://www.baidu.com"

    def baidu_search(self, search_key):
        self.driver.get(self.base_url)
        self.driver.find_element_by_id("kw").send_keys(search_key)
        self.driver.find_element_by_id("su").click()
        sleep(2)

    # 通過 parameterized實現參數化
    @parameterized.expand([
        ("case1", "selenium"),
        ("case2", "unittest"),
        ("case3", "paramenterized"),
    ])  # @parameterized.expand()來裝飾測試用例
    def test_search(self, name, search_key):
        self.baidu_search(search_key)
        self.assertEqual(self.driver.title, search_key + "_百度搜索")

    @classmethod
    def tearDownClass(cls):
        cls.driver.quit()

if __name__ == '__main':
    unittest.main(verbosity=2) # verbosity=2輸出更詳細的執行日志

 

運行結果如下:

 


免責聲明!

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



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