zoukankan      html  css  js  c++  java
  • 接口自动化框架搭建(七)--数据驱动,关键字驱动

    一、数据驱动:

    第一次遇到这个名字觉得很高大上,等了解自动化后发现这4个字分解一下,就很好理解,拿个登录自动化脚本举例子(登录接口存在用户名和密码字段)

    我们验证一个登录功能,需要验证常规和异常情况

    '''用户名、密码为空登录'''
    '''用户名正确,密码为空'''
    '''用户名为空,密码正确'''
    '''用户名密码正确 '''

    (1)、驱动:上面4种情况,我们只要在请求的body信息里面把用户名和密码对应的值做参数化,然后把这个方法进行封装(下面的user_login就是一个封装好的方法),再把4种业务的数据写入,就实现了数据驱动,这里的驱动其实也就是user_login这个方法,其他方法调用这个方法就可以实现一个测试点

    class loginTest(unittest.TestCase):
        def setUp(self):
    
        # 封装用户登录
        def user_login(self, username, password):
            '''编写你的接口脚本'''
        def test_login1(self):
            '''用户名、密码为空登录'''
            self.user_login(null, null)
        
        def test_login2(self):
            '''用户名正确,密码为空'''
            self.user_login(username, null)
    
        def test_login3(self):
            '''用户名为空,密码正确'''
            self.user_login(null, password)
    
        def test_login4(self):
            '''用户名密码正确 '''
            self.user_login(username, password)
    if __name__ == '__main__':
        unittest.main()

    (2)、数据怎么来--如果你是一个领导者,手底下人员可能没有代码基础怎么办,我们通过定义规则,别人不会代码,只要手动输入数据就能执行自动化(excel,txt,csv都可以),如果一个人工作,个人觉得直接代码里加个字典也很方便,搞excel这些还是很麻烦的



    二、关键字驱动:(比起数据驱动,关键字驱动更加清晰,易于多人合作)
    关键字驱动
    :数据也封装了,封装更完全--假设上面登录四种情况用一个字典概括下写在代码里,测试人员只要在excel里面输入正确的用户名和正确的密码,这四个情况就会执行,这样是不是方便很多?
    关键字驱动本质:只要输入具体的东西,就能得到你想要的值,如何得到值的逻辑全部都在代码里写好了

  • 相关阅读:
    XTU1199:Number Game
    SSL连接建立过程分析(1)
    JavaScript高级编程II
    PreferenceFragment 使用 小结
    crm使用soap更改下拉框的文本值
    POJ2241——The Tower of Babylon
    四个好看的CSS样式表格
    无论你在哪里上班,请记住下面黄金法则!
    js的for in循环和java里的foreach循环的差别
    具体解释EBS接口开发之物料导入API
  • 原文地址:https://www.cnblogs.com/heng-xin/p/8038744.html
Copyright © 2011-2022 走看看