测试工具链——Python实现文件的两两比对校验

在测试过程中,经常会遇到比对实际结果文件与期望结果文件一致性的测试场景,比如在Hadoop集群的MR(map/reduce)功能测试中,实际运行结果文件与期望结果文件的比对。

接下来我们就分享如何利用Python实现结果文件的两两校验。

程序设计

首先校验内容包含数据一致性校验、数量一致性校验。其次还需考虑一些特殊情况:

  • 支持多值列,某列包含多个值,且值顺序不固定
  • 支持多文件的比对,如,程序每次运行产生的实际结果文件数量不固定,需要先进行文件合并在校验
  • 支持过滤指定列不进行校验,如某些列是变值,如时间,则不校验
  • 支持选择指定列校验,如只需要校验某一列
  • 整体实现设计划分为三个层次,基础设施层、中间件层、服务层。

  • 基础设施层:文件读取、文件预处理
  • 中间件层:List选择过滤器、List比对
  • 服务层:完全性校验、过滤性校验、选择性校验
  • 开发实现

    基础设施层-文件读取

    基础设施层-文件预处理

    中间件层-List比对

    中间件层-List选择过滤器

    服务层-完全性校验

    服务层-选择性校验

    服务层-过滤性校验

    若对你有所帮助,欢迎大家评论、留言。

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2019年1月12日
    下一篇 2019年1月12日

    相关推荐