zoukankan      html  css  js  c++  java
  • 自动化框架——PO设计模式自学——参数化配置——tdd数据驱动——读取excel——列表嵌套列表——百度搜索

    注意:每一条用例测试之前,需要执行:self.driver.find_element_by_id('kw').clear()

    正常状态:

    import  unittest
    from selenium import webdriver
    from ddt import  ddt,data,unpack
    import time
    from aaa import readxls
    
    test_data = readxls()
    @ddt
    class TestMath(unittest.TestCase):
    
        @classmethod
        def setUpClass(cls):
            cls.driver = webdriver.Firefox()
            cls.driver.get('http://www.baidu.com')
    
        @classmethod
        def tearDownClass(cls):
            cls.driver.quit()
    
        def setUp(self):
            self.driver.find_element_by_id('kw').clear()
    
    
        def tearDown(self):
            pass
    
    
        @data(*test_data)
        @unpack    #在“脱外套”之后,针对你拿到的每一条数据根据逗号进行拆分
        def test_print_data(self,a,b):  #需要按拆出来的每条数据内的个数进行传参
    
            self.driver.find_element_by_id('kw').send_keys(str(a))
            self.driver.find_element_by_id('su').click()
    
            time.sleep(10)
    
            print(self.driver.title+'    '+str(a)+'       '+str(b))
    
    
    
            

    执行结果:

    =====================================================================================

    下面如果不执行清空:

    import  unittest
    from selenium import webdriver
    from ddt import  ddt,data,unpack
    import time
    from aaa import readxls
    
    test_data = readxls()
    @ddt
    class TestMath(unittest.TestCase):
    
        @classmethod
        def setUpClass(cls):
            cls.driver = webdriver.Firefox()
            cls.driver.get('http://www.baidu.com')
    
        @classmethod
        def tearDownClass(cls):
            cls.driver.quit()
    
        def setUp(self):
            #self.driver.find_element_by_id('kw').clear()
            pass
    
        def tearDown(self):
            pass
    
    
        @data(*test_data)
        @unpack    #在“脱外套”之后,针对你拿到的每一条数据根据逗号进行拆分
        def test_print_data(self,a,b):  #需要按拆出来的每条数据内的个数进行传参
    
            self.driver.find_element_by_id('kw').send_keys(str(a))
            self.driver.find_element_by_id('su').click()
    
            time.sleep(10)
    
            print(self.driver.title+'    '+str(a)+'       '+str(b))
    
    
    
            

    执行结果:

  • 相关阅读:
    react实现登陆页面
    “css中设置边框不显示,border:none; 和border:0; 都没用”的解决方案
    JQuery AJAX的post()方法和get()方法的区别
    JQuery事件之文档/窗口事件
    JQuery事件之表单事件
    【K8S初识】-什么是Kubernetes
    Yaml语法理解
    Json语法理解
    Maven学习-Maven工程中默认的环境变量
    Java语言(7)-Java中的注解
  • 原文地址:https://www.cnblogs.com/xiaobaibailongma/p/12632074.html
Copyright © 2011-2022 走看看