unittest parametric 2 - parameterized (Mushishi "selenium3 automated testing combat - based on the Python language note 37")

parameter is a parameterized library python support unittest, Nose, pytest unit testing framework

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

DOS directly input: Python install -m PIP Parameterized can install online

 2. Baidu search, for example:

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 () to decorate test 
    deftest_search (Self, name, search_key): 
        self.baidu_search (search_key) 
        self.assertEqual (self.driver.title, search_key + " _ Baidu search " ) 

    @classmethod 
    DEF tearDownClass (CLS): 
        cls.driver.quit () 

IF  __name__ == ' in __main ' : 
    unittest.main (the verbosity = 2) # the verbosity = 2 a more detailed execution log output

 

Results are as follows:

 

Guess you like

Origin www.cnblogs.com/kite123/p/11561855.html