比对文件或文件夹的自动化测试方法及系统技术方案

技术编号:13925098 阅读:55 留言:0更新日期:2016-10-28 05:24
本发明专利技术提供比对文件或文件夹的自动化测试方法及系统,通过哈希值的比对,判断各所述文件的内容及属性是否都为一致,若是,则各所述文件为一致;通过哈希值的比对,判断各所述文件夹的各对应的目录层级中的各文件及目录属性是否都为一致,若是,则各所述文件夹为一致。本发明专利技术还提供验证存储于不同计算机中的各文件或各文件夹是否一致的方法及系统,通过在存储方计算机上设置XML‑RPC服务器框架获得相应的哈希值,在设置有xmlrpcli模块的第三方计算机完成比对,实现判断各文件或各文件夹是否一致。本发明专利技术还提供包括由上述方法编写的测试用例的自动化测试工具以实现文件或文件夹校验,代替了繁琐的手工测试、提高了测试效率和准确率。

【技术实现步骤摘要】

本专利技术涉及计算机软件自动化测试领域,特别是涉及比对文件或文件夹的自动化测试方法及系统
技术介绍
随着计算机软件的发展,软件测试工作显得越来越重要。然而,传统的手工测试会有大量的重复性工作,耗费时间长,并容易出现人为错误。在计算机技术日新月异的发展中,文件(夹)的量越来越大,对数据的准确性要求也越来越高,稍有差错就有可能引起非常严重的问题。可见,传统的通过人工一一比对文件(夹)的比较方法,已经无法满足当前的需求。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供比对文件或文件夹的自动化测试方法及系统,用于解决现有技术中手工测试文件(夹)效率低、出错率高等问题。为实现上述目的及其他相关目的,本专利技术提供比对文件的自动化测试方法,用于验证各所述文件是否一致,所述方法包括:判断各所述文件的内容是否一致,包括:计算各文件的第一哈希值;分别将各所述第一哈希值写入与各所述文件一一对应的各第一文本文档中;分别计算各所述第一文本文档的第二哈希值;将各所述第二哈希值进行比对,比对结果为不一致的各第二哈希值所对应的各文件的内容为不一致;比对结果为一致的各第二哈希值所对应的各文件的内容为一致;判断各所述文件的属性是否一致,包括:获取各文件的各属性值;分别将各所述文件的各所述属性值同序写入与各所述文件一一对应的各第二文本文档中;分别计算各所述第二文本文档的第三哈希值;将各所述第三哈希值进行比对,比对结果为不一致的各第三哈希值所对应的各文件的属性为不一致;比对结果为一致的各第三哈希值所对应的各文件的属性为一致;判断各所述文件的内容、及属性是否都为一致,若是,则各所述文件为一致;若否,则各所述文件为不一致。于本专利技术一实施例中,所述第一哈希值、第二哈希值、及第三哈希值包括:MD5值、或SHA1值。于本专利技术一实施例中,所述获取各所述文件的各属性值包括:基于Python语言的os.stat方法获得。为实现上述目的及其他相关目的,本专利技术提供比对文件的自动化测试系统,用于验证各所述文件是否一致,所述系统包括:第一处理模块,用于计算各文件的第一哈希值;分别将各所述第一哈希值写入与各所述文件一一对应的各第一文本文档中;分别计算各所述第一文本文档的第二哈希值;第一测试模块,用于将各所述第二哈希值进行比对,比对结果为不一致的各第二哈希值所对应的各文件的内容为不一致;比对结果为一致的各第二哈希值所对应的各文件的内容为一致;第二处理模块,用于获取各文件的各属性值;分别将各所述文件的各所述属性值同序写入与各所述文件一一对应的各第二文本文档中;分别计算各所述第二文本文档的第三哈希值;第二测试模块,用于将各所述第三哈希值进行比对,比对结果为不一致的各第三哈希值所对应的各文件的属性为不一致;比对结果为一致的各第三哈希值所对应的各文件的属性为一致;第三测试模块,用于当所述第一测试模块和第二测试模块的比对结果都为一致时,判定各所述文件为一致;反之,判定各所述文件为不一致。于本专利技术一实施例中,所述第一哈希值、第二哈希值、及第三哈希值包括:MD5值、或SHA1值。于本专利技术一实施例中,所述获取各所述文件的各属性值包括:基于Python语言的os.stat方法获得。为实现上述目的及其他相关目的,本专利技术提供比对文件夹的自动化测试方法,用于验证各所述文件夹是否一致,所述方法包括:分别判断各所述文件夹的各对应的目录层级中的各文件是否一致,包括:如上任一所述的比对文件的自动化测试方法;分别判断各所述文件夹的各对应的目录层级的目录属性是否一致,包括:分别获得各所述文件夹中各目录的属性值,并同序写入与各所述文件夹一一对应的各第三文本文档中;分别计算各所述第三文本文档的第四哈希值;将各所述第四哈希值进行比对,比对结果为不一致的各第四哈希值所对应的各目录属性为不一致;比对结果为一致的各第四哈希值所对应的各目录属性为一致;判断各所述文件夹的各对应的目录层级中的各文件、及各目录属性是否都为一致,若是,则各所述文件夹为一致;若否,则各所述文件夹为不一致。于本专利技术一实施例中,所述分别判断各所述文件夹的各对应的目录层级中的各文件是否一致,还包括:基于Python语言的os.walk和os.path.join方法遍历各所述文件夹从而获取各所述文件夹中的各文件的路径,以供计算各所述文件的第一哈希值。为实现上述目的及其他相关目的,本专利技术提供比对文件夹的自动化测试系统,用于验证各所述文件夹是否一致,所述系统包括:第一判断模块,用于根据任一所述的比对文件的自动化测试方法,分别判断各所述文件夹的各对应的目录层级中的各文件是否一致;第二判断模块,用于分别判断各所述文件夹的各对应的目录层级的目录属性是否一致,包括:分别获得各所述文件夹中各目录的属性值,并同序写入与各所述文件夹一一对应的各第三文本文档中;分别计算各所述第三文本文档的第四哈希值;将各所述第四哈希值进行比对,比对结果为不一致的各第四哈希值所对应的各目录属性为不一致;比对结果为一致的各第四哈希值所对应的各目录属性为一致;第三判断模块,用于判断各所述文件夹的各对应的目录层级中的各文件、及各目录属性是否都为一致,若是,则各所述文件夹为一致;若否,则各所述文件夹为不一致。于本专利技术一实施例中,所述分别判断各所述文件夹的各对应的目录层级中的各文件是否一致,还包括:基于Python语言的os.walk和os.path.join方法遍历各所述文件夹从而获取各所述文件夹中的各文件的路径,以供计算各所述文件的第一哈希值。为实现上述目的及其他相关目的,本专利技术提供比对文件或文件夹的自动化测试方法,用于验证各所述文件或各所述文件夹是否一致,其中,各所述文件或各所述文件夹存储于不同的计算机,各所述计算机中分别包括:XML-RPC服务器框架,所述方法包括:在各所述计算机中,根据任一所述的比对文件的自动化测试方法、或任一所述的比对文件夹的自动化测试方法获取相应的哈希值;各所述计算机将各所述相应的哈希值通过各自的XMLRPC服务器框架传递给第三方计算机,以供所述第三方计算机进行比对后判断各所述文件或各所述文件夹是否一致,其中,所述第三方计算机中包括:用于调用注册在各所述XML-RPC服务器框架中的函数的xmlrpcli模块。为实现上述目的及其他相关目的,本专利技术提供比对文件或文件夹的自动化测试系统,用于验证各所述文件或各所述文件夹是否一致,其中,各所述文件或各所述文件夹存储于不同的计算机,所述系统包括:各服务框架模块,用于各所述计算机根据任一所述的比对文件的自动化测试方法、或任一所述的比对文件夹的自动化测试方法获取相应的哈希值;将各所述相应的哈希值传递给第三方计算机;xmlrpcli模块,用于所述第三方计算机比对各所述相应的哈希值,从而判断各所述文件或各所述文件夹是否一致。为实现上述目的及其他相关目的,本专利技术提供一种自动化测试装置,包括:根据任一所述的比对文件的自动化测试方法、任一所述的比对文件夹的自动化测试方法、和/或所述的比对文件或文件夹的自动化测试方法编写的测试用例,所述测试用例用于根据输入的各文件或各文件夹的路径判断各所述文件或各所述文件夹是否一致。如上所述,本专利技术的比对文件或文件夹的自动化测试方法及系统,适用于Windows、Linux、AIX操作系本文档来自技高网...

【技术保护点】
一种比对文件的自动化测试方法,其特征在于,用于验证各所述文件是否一致,所述方法包括:判断各所述文件的内容是否一致,包括:计算各文件的第一哈希值;分别将各所述第一哈希值写入与各所述文件一一对应的各第一文本文档中;分别计算各所述第一文本文档的第二哈希值;将各所述第二哈希值进行比对,比对结果为不一致的各第二哈希值所对应的各文件的内容为不一致,比对结果为一致的各第二哈希值所对应的各文件的内容为一致;判断各所述文件的属性是否一致,包括:获取各文件的各属性值;分别将各所述文件的各所述属性值同序写入与各所述文件一一对应的各第二文本文档中;分别计算各所述第二文本文档的第三哈希值;将各所述第三哈希值进行比对,比对结果为不一致的各第三哈希值所对应的各文件的属性为不一致;比对结果为一致的各第三哈希值所对应的各文件的属性为一致;判断各所述文件的内容、及属性是否都为一致,若是,则各所述文件为一致;若否,则各所述文件为不一致。

【技术特征摘要】
1.一种比对文件的自动化测试方法,其特征在于,用于验证各所述文件是否一致,所述方法包括:判断各所述文件的内容是否一致,包括:计算各文件的第一哈希值;分别将各所述第一哈希值写入与各所述文件一一对应的各第一文本文档中;分别计算各所述第一文本文档的第二哈希值;将各所述第二哈希值进行比对,比对结果为不一致的各第二哈希值所对应的各文件的内容为不一致,比对结果为一致的各第二哈希值所对应的各文件的内容为一致;判断各所述文件的属性是否一致,包括:获取各文件的各属性值;分别将各所述文件的各所述属性值同序写入与各所述文件一一对应的各第二文本文档中;分别计算各所述第二文本文档的第三哈希值;将各所述第三哈希值进行比对,比对结果为不一致的各第三哈希值所对应的各文件的属性为不一致;比对结果为一致的各第三哈希值所对应的各文件的属性为一致;判断各所述文件的内容、及属性是否都为一致,若是,则各所述文件为一致;若否,则各所述文件为不一致。2.根据权利要求1所述的比对文件的自动化测试方法,其特征在于,所述第一哈希值、第二哈希值、及第三哈希值包括:MD5值、或SHA1值。3.根据权利要求1所述的比对文件的自动化测试方法,其特征在于,所述获取各所述文件的各属性值包括:基于Python语言的os.stat方法获得。4.一种比对文件的自动化测试系统,其特征在于,用于验证各所述文件是否一致,所述系统包括:第一处理模块,用于计算各文件的第一哈希值;分别将各所述第一哈希值写入与各所述文件一一对应的各第一文本文档中;分别计算各所述第一文本文档的第二哈希值;第一测试模块,用于将各所述第二哈希值进行比对,比对结果为不一致的各第二哈希值所对应的各文件的内容为不一致,比对结果为一致的各第二哈希值所对应的各文件的内容为一致;第二处理模块,用于获取各文件的各属性值;分别将各所述文件的各所述属性值同序写入与各所述文件一一对应的各第二文本文档中;分别计算各所述第二文本文档的第三哈希值;第二测试模块,用于将各所述第三哈希值进行比对,比对结果为不一致的各第三哈希值所对应的各文件的属性为不一致;比对结果为一致的各第三哈希值所对应的各文件的属性为一致;第三测试模块,用于当所述第一测试模块和第二测试模块的比对结果都为一致时,判定各所述文件为一致;反之,判定各所述文件为不一致。5.一种比对文件夹的自动化测试方法,其特征在于,用于验证各所述文件夹是否一致,所述方法包括:分别判断各所述文件夹的各对应的目录层级中的各文件是否一致,包括:如权利要求1至3中任一所述的比对文件的自动化测试方法;分别判断各所述文件夹的各对应的目录层级的目录属性是否一致,包括:分别获得各所述文件夹中各目录的属性值,并同序写入与各所述文件夹一一对应的各第三文本文档中;分别计算各所述第三文本文档的第四哈希值;将各所述第四哈希值进行比对,比对结果为不一致的各第四哈希值所对应的各目录属性为不一致;比对结果为一致的各第四哈希值所对应的各目录属性为一致;判断各所述文件夹的各...

【专利技术属性】
技术研发人员:唐杨
申请(专利权)人:上海爱数信息技术股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1