unittest_使用参数化web自动化测试_parameterized

Posted 月半王令

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unittest_使用参数化web自动化测试_parameterized相关的知识,希望对你有一定的参考价值。

#参数化库: parameterized 
前提:先安装patameterized库  >>>python -m pip install parameterized
 
from selenium import webdriver 
import unittest
from time import sleep
from parameterized import parameterized

 

class TestSearch(unittest.TestCase):
    
    @classmethod     #基于类级别只开启一次浏览器,执行当前目录下所有用例
    def setUpClass(cls):
        cls.dr = webdriver.Chrome()
        cls.base_url = \'https://www.baidu.com\'
    
    @classmethod
    def tearDownClass(cls):
        cls.dr.quit()

 

    @parameterized.expand([
        (\'case1\',\'selenium\',\'selenium_百度搜索\'),
        (\'case2\',\'python\',\'python_百度搜索\'),
        (\'case3\',\'unittest\',\'unittest_百度搜索\')
    ])
    
    def test_search(self,name,searchkeys,assertResult):
        dr = self.dr 
        dr.get(self.base_url)
        dr.find_element_by_id("kw").send_keys(searchkeys)
        dr.find_element_by_id("su").click() 
        sleep(3)
        self.assertEqual(self.dr.title,assertResult)
    
    @unittest.skip("直接跳过")
    def test_selenium(self):
        self.baidu_search("selenium")
        self.assertEqual(self.dr.title,"selenium_百度搜索")

 

    @unittest.skip("直接跳过")  
    def test_python(self):
        self.baidu_search("python")
        self.assertEqual(self.dr.title,"python_百度搜索")
      



if __name__ == "__main__":
    unittest.main(verbosity=2) #打印日志级别



执行结果:

 

 

   

 

以上是关于unittest_使用参数化web自动化测试_parameterized的主要内容,如果未能解决你的问题,请参考以下文章

Python3+Selenium Web自动化测试案例分享⑹——unittest组织测试用例

Python Selenium unittest+HTMLTestRunner实现 自动化测试及发送测试报告邮件

Python单元测试框架之unittest参数化(paramunittest)

pytest学习和使用12-Unittest和Pytest参数化详解

pytest-fixture参数化

ui自动化__unittest单元测试框架