RobotFramework环境配置二十:数据驱动(Get Sheet Values From Excel)

数据驱动

RIDE提供的库:

  1. Create List
  2. Get File
  3. Import Variables
  4. Template
  5. ExcelLibrary

自定义库:DataCenter.py

  1. Read Data From Excel
  2. Read Excel File
  3. Read CSV File
  4. Read Column From Excel
  5. Get Sheet Values From Excel

一、数据驱动测试注重于测试软件的功能性需求,也即数据驱动测试执行程序所有功能需求的输入条件。实现KISS。

二、Get Sheet Values From Excel 方法

前面我们以精确和模糊搜索课程测试为例,分别讨论过 Read Excel File和 Read Column From Excel 方法。在精确搜索之后,对获取到的卡进一步检测详细内容。因为存储的数据是三维列表,所以我们需要创建关键字 Reorgnize List 对三维列表进行处理。下面我们用 Get Sheet Values From Excel 方法通过 sheetname 获取不同卡的数据和自定义关键字 GUI_CHECK_eCard_Contain_Courses & Reorgnize List 实现详细内容检测。

这里写图片描述

导入自定义库文件 data_center.py & main.py 
目录:F:\Robotframework\common\library

这里写图片描述

数据源 
有关Excel数据源的问题,请参考个人博客数据驱动(ExcelLibrary)

这里写图片描述

eCard_Courses.xls 包含各类卡;sheetname 中每张卡内包含的所有课程。

用例:Case01614_Course_Contains

  1. 从 Excel 读取数据
  2. 登录,输入“单张畅学卡全名”,进行搜索
  3. 获取卡内课程信息
  4. 检测卡内课程信息是否包含Excel表中对应 sheet 的数据

这里写图片描述

Get Sheet Values From Excel:通过 sheetname 获取不同卡的数据,删除为空数据。

封装 keyword: GUI_Search_Language & GUI_FETCH_eCards 实现搜索并获取所有卡。

封装 keyword: GUI_ENTER_eCard_Detail & GUI_CHECK_eCard_Contain_Courses 进入课程详情页,获取并检测单卡包含的所有课程。

Keyword:GUI_CHECK_eCard_Contain_Courses

这里写图片描述

${data}:Excel 数据 
${result}:获取并处理后的数据

源代码: Get Sheet Values From Excel

这里写图片描述

这里写图片描述

通过sheetname,从第三行、第二列开始按列读取所有数据; 
判断数据是否为空,是空移除。

源代码: Reorgnize List

这里写图片描述

GUI_CHECK_eCard_Contain_Courses 中获取的数据是三维 list,Reorgnize List 重组成二维 list。

这里写图片描述

最后,检测卡内课程信息是否与 Excel 表中对应 sheet 的数据一致。

PS:

  1. 关于处理Excel整数变浮点数的问题:python读取Excel文件后,如何处理浮点数的问题请查看个人博客数据驱动(ExcelLibrary
  2. 关于用json处理完list,tuple和dict中乱码之后产生的问题:无法以列表,元组和字典的方式读取数据,请查看个人博客中文日志乱码问题

猜你喜欢

转载自blog.csdn.net/qq_39719530/article/details/81025668