虽不会咬定青山不放松,但事必有始有终

如何在robotframework基础上使用数据驱动测试

上一篇 / 下一篇  2018-11-18 17:28:13 / 个人分类:Robotframework

一.写在前面

二.所需组件说明

三.测试用例工程说明

四.架构工作流程

五.代码说明 

    1.图形化关键字图表说明

    2.自定义关键字说明

    3.第三方关键字说明

    4.使用GET请求方式的区别

六.对比 

    使用前

    使用后

七.后续

一.写在前面

robotframework是很好用的关键字驱动测试框架,但是在实际工作中也有些地方使用不便,比如在我们设计参数校验测试case时,往往只是想修改校验参数类型而不得不做大量复制粘贴操作,最终导致了一个测试case中存在大量的冗余代码,而且如果在后续的使用中一旦出现变动,测试case将不便维护。

针对此情况,想到了尝试在robotframework功能基础上封装了一个轻型框架,用来实现部分接口测试场景的数据驱动方式的自动化测试

二.所需组件说明

1.python2.7

2.robotframework

3.依赖库

Library RequestsLibrary

Library Collections

Library OperatingSystem

Library Process

Library String

Library XML

Library HttpLibrary.HTTP

Library DiffLibraryLibrary 

../CustomKeyword.py(自定义依赖库)等等

4.excel && txt

 

三.测试用例工程说明



test-xxx-xxx         //测试case工程名

--→data                               //测试数据文件夹

        ---->api-test.txt            //供测试框架获取数据

        ---->api-test.xls           //方便tester进行case设计编辑

--→testcase                        //测试框架文件夹

        ---->xxxxxx-api.txt  //接口测试框架

        --→start.sh                 //启动j脚本

CustomKeywork.py            //自定义关键字库

README.md                      //都知道


1.data文件夹中存放测试数据




2.testcase文件夹中存放测试用例实例,测试完成后的报告,启动脚本(其中txt文档为测试用例实例供robotframework调用,log.html,report.html,output.xml是测试报告,start.sh是启动脚本)



3.自定义测试库(一些测试用的函数)



data中存放的是具体接口的测试数据,可以使用excel对conf-api-test.xls进行配置也可以直接打开对应的txt进行编辑(注:最终工具执行测试时是读取txt文件,所以使用excel配置后需要用表格数据替换对应txt中的数据)


excel查看



不需要校验的内容使用?* 正则匹配掉



txt查看



其中数据分为四列

   第一列:用例名称

   第二列:用例执行开关(通过配置yes开启执行这条case,配置no不执行这条case)

   第三列: 输入数据(接口请求调用的数据)

   第四列:预期输出  

四.架构工作流程



五.代码说明

1.图形化关键字图表说明

调用库以及设置全局变量的操作不变




2.自定义关键字说明



3.第三方关键字说明

变量赋值关键字



字符串拼接关键字



变量运算关键字



if条件判断关键字

continue关键字



断言失败继续执行关键字


正则匹配断言关键字

4.使用GET请求方式的区别

需要在请求调用之前,需要将unicode类型的输入数据转换成字典类型




六.对比

使用前



使用后



测试报告




七.后续

1.添加测试输出录制功能;

2.标准化测试数据格式,可以实现多工具兼容使用;

等等等等


TAG:

 

评分:0

我来说两句

日历

« 2024-04-25  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 3880
  • 日志数: 4
  • 建立时间: 2018-04-09
  • 更新时间: 2018-11-18

RSS订阅

Open Toolbar