由于自动化功能测试需要大量的数据做测试,尤其是接口测试,需要通过数据驱动的方式来执行测试:
Robotframework数据驱动的步骤如下:
1.设置脚本关键字;
2.创建引用该关键字的测试用例;
例1 从接口获取数据product_id数据驱动:
1 设置关键字
关键字中输入要实现的功能代码:
${pro_ziying} set variable id=${product_id} #接口路径
create session pro_ziying ${url[0]}${pro_ziying} #创建别名:pro_ziying的连接
${get_head} create dictionary Content-Type=application/x-www-form-urlencoded Authori-zation=${token[1]} #获取头部数据
${ziying} get Request pro_ziying ${url[0]}${pro_ziying} headers=${get_head} #执行post
#打印结果
log ${ziying.text} #打印返回结果,中文
log ${ziying.content} #打印返回结果,同text
log ----- 开始断言 ------
${result} run keyword and return status should be equal as strings ok ${ziying.json()["msg"]}
Run Keyword And Continue On Failure Should Be True ${result} #即使断言失败依然执行下一个用例
delete all sessions
2 创建测试用例
Template中输入引用的关键字名称,内容中输入测试数据:
执行结果:
此例中部分数据进行了参数化:通过设置关键字的方法设置了全局变量
Set Global Variable \${url}
${url[0]}取url的第一个记录,${token[1]}取token的第二条记录;
例2 web创建产品数据驱动
1 设置关键字
参数化需要输入的字段:
2 创建测试用例
引用关键字,并输入测试数据:
注意数据驱动的第一行不能用#开头,否则第一行数据会变成template,数据禁用用Comment(Ctrl+3)