数据驱动测试

数据驱动测试老话题了,最近写单接口自动化校验。但是结果不是我预期的,这里再学习一下数据驱动测试

数据驱动的特点:

数据驱动是指在脚本固定的情况下,根据数据的条数来决定脚本的运行次数,即有几组数据,脚本就会
运行几遍。也具有将测试数据和测试用例分离特点

数据驱动的优点:

  • 修改测试数据,而不影响测试脚本
  • 可通过修改数据(而不是测试脚本)来添加新测试用例

数据驱动适合场景:

当你写自动化用例的时候发下很多用例的操作步骤都非常的相似,只是测试数据不同时,我们就需要考虑如何节省一些代码量,不要重复Ctrl C+V了。这个时候就非常适合采用数据驱动测试了。非常鲜明的例子就是:单接口自动化测试。

基于pytest的数据驱动:

原始登录测试用例代码:

class TestMachine:
    def test_001(self):
        login(name1,pass1)
        
    def test_002(self):
        login(name2,pass2)

采用数据驱动:

pytest.mark.parametrize('data', all_list)
class TestMachine:

    def test_login(self, data):
		login(data['name'],data['pass'])

all_list = [{name:'小王','pass':'123'},{name:'小李','pass':''}]

这里参数可以是从csv\excel\yaml\json读取,也可以写在代码中但是需要注意和脚本分开。

和数据驱动一样的还有一个BDD(行为驱动)请大家自行了解

posted @ 2023-04-20 16:48  Tarzen  阅读(127)  评论(0编辑  收藏  举报