美文网首页
python自动化之数据驱动 - data driven(参数化

python自动化之数据驱动 - data driven(参数化

作者: DD丿 | 来源:发表于2021-04-26 09:56 被阅读0次

做过自动化测试的朋友经常听说过 数据驱动 (或者面试的时候被问到过)。

什么是数据驱动?

如果有一批测试用例,具有 相同的测试步骤 ,只是 测试参数数据不同 。

自动化测试时,把测试数据从用例代码中 分离 开来,以后增加新的测试用例,只需要修改数据。

这就是数据驱动,通俗点也叫参数化。

举个例子:

某系统 登录功能的测试,有一批测试用例,其执行的步骤几乎都是一样的,只是使用的测试参数不同。

比如:

不输入用户名,输入正确密码

输入比正确用户名后面少一个字符,输入正确密码

输入比正确用户名后面多一个字符,输入正确密码

输入比正确用户名前面少一个字符,输入正确密码

输入比正确用户名前面多一个字符,输入正确密码

输入正确用户名,不输入密码

输入正确用户名,输入比正确密码后面多一个字符

这种情况可以使用 hytest用例 的 数据驱动格式,只需如下定义即可

class c00001: 

 # ddt_cases 里面每个字典元素 定义一个用例的数据 # 其中: name是该用例的名称, para是用例的参数 ddt_cases = [

        {

            'name' : '登录 - 00001',

            'para' : ['user001','888888']

        },

        {

            'name' : '登录 - 00002',

            'para' : ['user0012','888888']

        },

        {

            'name' : '登录 - 00003',

            'para' : ['ser001','888888']

        }

    ]

    # 调用时,    # hytest 框架执行时,会自动创建出3份用例实例    # 并且在调用 teststeps时,把每个用例的参数设置在 self.para 中    # 用例代码 可以直接从 self.para 中获取参数    

 defteststeps(self):     

 username, password = self.para            # 取出参数       

这样,我们就不需要定义那么多的测试用例类了, 而且测试数据也可以集中存放。


项目python文件格式

class DD0002:

    name= '测试用例 DD0002'

      def setup(self):

          open_browser()

          wd= GSTORE['wd']

          mgr_login()

    def teardown(self):

         INFO('清除初始化')

   def teststeps(self):

         STEP(1, '添加警情')

         wd= GSTORE['wd']

相关文章

网友评论

      本文标题:python自动化之数据驱动 - data driven(参数化

      本文链接:https://www.haomeiwen.com/subject/qcefrltx.html