zoukankan      html  css  js  c++  java
  • selenium ddt数据驱动模式

    
    
    #背景:
      ddt是一种文件驱动方法,不是所有的用例都适用,下面已登录举例,我的理解驱动方法的目的就是为了减少代码量,从而验证更多的场景的一种方法,
    大致分为以下几步,

    #
    conding:utf-8 import unittest from selenium import webdriver from page.login_page import LoginPage,belle_url from common.log import * loginLog=Log()

    #第一步:导入ddt包
    import ddt

    #第二步:数据分离,定义一个list,里面设置字典类型数据,设置想要驱动的数据
    data1=[{"user":"liu.yqty","password":"111111"}, {"user": "liu.yqty", "password": "111211"}, {"user": "liu.yqty", "password": ""}, {"user": "", "password": "111111"}] #第三步:引用@ddt.ddt装饰类 @ddt.ddt class login(unittest.TestCase): def setUp(self): self.driver=webdriver.Chrome() self.driver.get(belle_url) self.login_driver = LoginPage(self.driver) def login(self,user,password): #1输入账号 self.login_driver.input_username(user) #2输入密码 self.login_driver.input_password(password) #3点击登录按钮 self.login_driver.click_login_button() def tearDown(self): self.driver.quit()
    #第四步:加载测试数据,*代表取的是list类型,**代表取的字典类型,然后设置断言 @ddt.data(
    *data1) def test01_login(self,data): print(data) try: loginLog.info("开始测试") result=self.login(**data) sucessMsg=self.login_driver.getSucessMsg() assert u"刘永强-体育" in sucessMsg loginLog.info(sucessMsg+"登录成功") print(sucessMsg+"登录成功") except Exception as msg: failrusult=self.login_driver.getLoginMsg() loginLog.info(failrusult) print(failrusult) if __name__=="__main_": unittest.main()
  • 相关阅读:
    1. Dubbo原理解析-Dubbo内核实现之SPI简单介绍 (转)
    经典算法问题的java实现 (二)
    经典算法问题的java实现 (一)
    Bitmap的秘密
    Java Networking: UDP DatagramSocket (翻译)
    Java字节码浅析(二)
    Sql server 浅谈用户定义表类型
    Jquery 动态生成表单 并将表单数据 批量通过Ajax插入到数据库
    ASP.NET获取上传图片的大小
    ASP.Net大文件上传组件详解
  • 原文地址:https://www.cnblogs.com/onelove1/p/13172653.html
Copyright © 2011-2022 走看看