zoukankan      html  css  js  c++  java
  • 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) #打印日志级别



    执行结果:

       
  • 相关阅读:
    矿场和矿池有什么区别?
    石墨烯技术到底是什么?
    区块链技术如何解决网络犯罪?
    区块链+AI将给区块链带来怎样的改变?
    区块链技术具体包含哪些方面?
    2018年加密货币税率为0%的国家盘点
    what??|诞生才一年的BCH竟面临硬分叉的抉择
    币圈黑客在偷到币后是如何销脏的?
    选择器
    纯js+html+css实现模拟时钟
  • 原文地址:https://www.cnblogs.com/xlzhangq/p/13199401.html
Copyright © 2011-2022 走看看