书签 分享 收藏 举报 版权申诉 / 11

对文件操作进行测试方法及装置.pdf

  • 上传人:111****11
  • 文档编号:1629067
  • 上传时间:2018-06-30
  • 格式:PDF
  • 页数:11
  • 大小:705.81KB
  • 摘要
    申请专利号:

    CN201510148761.6

    申请日:

    2015.03.31

    公开号:

    CN104750612A

    公开日:

    2015.07.01

    当前法律状态:

    授权

    有效性:

    有权

    法律详情:

    授权|||实质审查的生效IPC(主分类):G06F 11/36申请日:20150331|||公开

    IPC分类号:

    G06F11/36

    主分类号:

    G06F11/36

    申请人:

    腾讯科技(深圳)有限公司

    发明人:

    马识佳; 周锦威

    地址:

    518000广东省深圳市福田区振兴路赛格科技园2栋东403室

    优先权:

    专利代理机构:

    广州三环专利代理有限公司44202

    代理人:

    郝传鑫; 熊永强

    PDF完整版下载: PDF下载
    内容摘要

    本发明实施例公开了一种对文件操作进行测试的方法,其特征在于,包括:获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合;检测所述目标目录下的文件路径的变化得到采样文件路径集合;比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合;获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。本发明还公开了一种对文件操作进行测试的方法及装置。采用本发明,可提高程序测试的便利性。

    权利要求书

    权利要求书
    1.  一种对文件操作进行测试的方法,其特征在于,包括:
    获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合;
    检测所述目标目录下的文件路径的变化得到采样文件路径集合;
    比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合;
    获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。

    2.  根据权利要求1所述的对文件操作进行测试的方法,其特征在于,所述通过比较参考文件路径集合和所述差异文件路径集合生成测试结果的步骤为:
    判断所述参考文件路径集合与所述差异文件路径集合是否匹配,若是,则判定测试通过。

    3.  根据权利要求2所述的对文件操作进行测试的方法,其特征在于,在所述参考文件路径集合与所述差异文件路径集合不同时,判定测试不通过,并展示所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径。

    4.  根据权利要求3所述的对文件操作进行测试的方法,其特征在于,所述判定测试不通过的步骤之后还包括:
    将所述采样文件路径集合作为基准文件路径集合,执行检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤。

    5.  根据权利要求3所述的对文件操作进行测试的方法,其特征在于,所述检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤之前还包括:
    获取输入的应用标识;
    所述方法还包括:
    检测所述与应用标识对应的测试指令,将获取检测到的测试指令的指令标识,将所述指令标识作为测试中的指令标识并缓存,若缓存中已存在测试中的指令标识,则将测试中的指令标识更新。

    6.  根据权利要求5所述的对文件操作进行测试的方法,其特征在于,所述检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤还包括:
    获取所述测试中的指令标识,所述检测得到的采样文件路径集合与所述测试中的指令标识对应。

    7.  根据权利要求6所述的对文件操作进行测试的方法,其特征在于,所述展示所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径的步骤还包括:
    将所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径与所述测试中的指令标识对应展示。

    8.  根据权利要求5所述的对文件操作进行测试的方法,其特征在于,所述检测所述与应用标识对应的测试指令的步骤为:
    通过消息钩子hook或监听器对象检测与所述应用标识对应的测试指令。

    9.  根据权利要求1所述的对文件操作进行测试的方法,其特征在于,所述获取所述目标目录下的文件路径集合的步骤为:
    遍历所述目标目录下的子目标目录,获取所述目标目录以及所述遍历到的子目标目录下的文件路径集合。

    10.  一种对文件操作进行测试的装置,其特征在于,包括:
    目标目录获取模块,用于获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合;
    文件路径检测模块,用于检测所述目标目录下的文件路径的变化得到采样文件路径集合;
    文件路径比对模块,用于比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合;
    测试结果生成模块,用于获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。

    11.  根据权利要求10所述的对文件操作进行测试的装置,其特征在于,所述测试结果生成模块还用于判断所述参考文件路径集合与所述差异文件路径集合是否匹配,若是,则判定测试通过。

    12.  根据权利要求11所述的对文件操作进行测试的装置,其特征在于,所述测试结果生成模块还用于在参考文件路径集合与所述差异文件路径集合不同时,判定测试不通过,并展示所述参考文件路径集合与所述差异文件路径集合 中存在差异的文件路径。

    13.  根据权利要求12所述的对文件操作进行测试的装置,其特征在于,所述测试结果生成模块还用于将所述采样文件路径集合作为基准文件路径集合,执行检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤。

    14.  根据权利要求12所述的对文件操作进行测试的装置,其特征在于,所述装置还包括待测应用选取模块,用于获取输入的应用标识;
    所述装置还包括测试指令获取模块,用于检测所述与应用标识对应的测试指令,将获取检测到的测试指令的指令标识,将所述指令标识作为测试中的指令标识并缓存,若缓存中已存在测试中的指令标识,则将测试中的指令标识更新。

    15.  根据权利要求14所述的对文件操作进行测试的方法,其特征在于,所述文件路径检测模块还用于获取所述测试中的指令标识,所述检测得到的采样文件路径集合与所述测试中的指令标识对应。

    16.  根据权利要求15所述的对文件操作进行测试的方法,其特征在于,所述测试结果生成模块还用于
    将所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径与所述测试中的指令标识对应展示。

    17.  根据权利要求14所述的对文件操作进行测试的方法,其特征在于,所述测试指令获取模块还用于通过消息钩子hook或监听器对象检测与所述应用标识对应的测试指令。

    18.  根据权利要求10所述的对文件操作进行测试的方法,其特征在于,所述目标目录获取模块,还用于遍历所述目标目录下的子目标目录,获取所述目标目录以及所述遍历到的子目标目录下的文件路径集合。

    说明书

    说明书对文件操作进行测试方法及装置
    技术领域
    本发明涉及计算机技术领域,尤其涉及一种对文件操作进行测试的方法及装置。
    背景技术
    随着用户对手机软件的需求不断提高,用户使用的手机软件数量也相应增加。而许多手机软件在运行过程中,会生成或下载一些文件,其中包括重要文件、短期文件与临时文件等,因此就需要确认所生成或下载的文件是否正确。同时手机软件也会对一些冗余文件进行清理,如清理垃圾、清除缓存,清理多余音视频、日志文件等功能,在清理文件时需要确保清理文件的正确性。因此,开发人员需要对计算机程序对文件的下载、生成或删除操作进行测试,检测对计算机程序对文件的操作是否正常。
    然而,传统技术中,对这些文件正确性测试均为手动测试,确认繁琐麻烦,耗时长,效率低,从而导致操作便利性不足。
    发明内容
    基于此,为了解决传统技术中软件测试过程无法自动化测试,操作便利性不足的技术问题,还提供了一种对文件操作进行测试的方法。
    一种对文件操作进行测试的方法,包括:
    获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合;
    检测所述目标目录下的文件路径的变化得到采样文件路径集合;
    比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合;
    获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。
    此外,为了解决传统技术中软件测试过程无法自动化测试,操作便利性不 足的技术问题,还提供了一种对文件操作进行测试的装置。
    一种对文件操作进行测试的装置,包括:
    目标目录获取模块,用于获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合;
    文件路径检测模块,用于检测所述目标目录下的文件路径的变化得到采样文件路径集合;
    文件路径比对模块,用于比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合;
    测试结果生成模块,用于获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。
    实施本发明实施例,将具有如下有益效果:
    采用了上述对文件操作进行测试的方法及装置之后,程序测试人员只需要在测试之前先选择待测应用程序的文件操作的对应的目标目录,然后进行程序测试,即可在测试结束后自动得到测试前后目标目录下产生变化的差异文件路径集合,并可自动将其与程序测试人员预先设定的参考文件路径集合进行比对,判断待测程序是否运行正常。测试过程无需人工对目标目录下的文件变化进行记录和比较,全部均可自动化完成,从而提高了操作的便利性。
    附图说明
    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
    其中:
    图1为对文件操作进行测试的方法的流程图;
    图2为对文件操作进行测试的装置的结构示意图。
    具体实施方式
    下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
    为解决上述软件测试中,对于文件路径的变化只能手动测试从而造成操作便利性不足的问题,在一个实施例中,特提出了一种对文件操作进行测试的方法,该方法的执行可依赖于计算机程序,该计算机程序可以是测试软件或程序开发软件的插件程序。该计算机程序可运行于冯诺依曼体系的计算机系统之上。该计算机系统可以是智能手机、平板电脑、笔记本电脑或者桌面计算机等终端设备。
    具体的,在本实施例中,对文件操作进行测试的方法如图1所示,包括:
    步骤S102:获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合。
    在本实施例中,程序测试人员对计算机程序进行测试之前,可启动本实施例的方法对应的测试程序或测试插件,然后再对待测计算机程序进行测试。程序测试人员可预估待测计算机程序的操作目录,然后将该操作目录输入,测试程序或测试插件即可获知操作目录的目标目录。
    例如,在一个网络磁盘的web应用中,用户上传的文件通常存储在web服务器上指定的目录中,甚至web应用会为每个用户创建该用户独享的文件夹,例如,可使用用户标识ID作为该文件夹的名称。该用户上传的文件均存储在为该用户分配的文件中。若程序测试人员希望使用某个用户帐户登陆,然后测试文件上传功能,则可预估到该测试过程对应的目录为名称为该用户的用户标识。程序测试人员即可选择该目标目录输入。
    测试程序或测试插件接收到该目标目录之后,则可获取该目标目录下包含的所有文件的文件名,并根据该目标目录得到所有文件的文件路径,获取到的所有文件路径的集合即为文件路径集合,且该文件路径集合作为后续用于比较的基准文件路径集合。
    可选的,可遍历所述目标目录下的子目标目录,获取所述目标目录以及所述遍历到的子目标目录下的文件路径集合。
    可选的获取到的文件路径集合中的元素可以是输入的目标目录下的文件的相对路径。使用相对路径可便于后续的比较。
    程序测试人员输入了目标目录后,即可启动待测的应用程序进行测试,对待测的应用程序输入测试指令或者包含多条测试指令的测试脚本,待测的应用程序接收到测试指令或者根据测试脚本依次提取出测试指令之后,即可执行相应的测试指令。在测试过程中,待测的应用程序会根据测试指令对输入的目标目录下的文件进行创建,移动或删除的操作。
    步骤S104:检测所述目标目录下的文件路径的变化得到采样文件路径集合。
    程序测试人员可在对待测应用程序测试完毕后,输入测试结束指令,测试程序或测试插件接收到该测试结束指令之后,则可再次获取测试前输入的目标目录下的文件路径集合,此次获取的文件路径集合即为采样文件路径集合。
    步骤S106:比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合。
    如前例中,若程序测试人员测试的是某个用户帐户下的文件上传功能,上传了A文件和B文件,则可将测试前获取的基准文件路径集合与测试后获取的采样文件路径集合进行比较。若比较后发现,采样文件路径集合下比基准文件路径集合下的多了A文件和B文件的文件路径,则A文件和B文件的文件路径即为差异文件路径集合。
    步骤S108:获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。
    参考文件路径集合即为程序测试人员预先编写的正确的测试结果,程序测试人员可在测试之前或测试之后向测试程序和测试插件输入参考文件路径集合。如上例中,若程序测试人员在测试过程中上传了A文件和B文件,则程序测试人员可输入A文件和B文件作为参考文件路径集合。
    在本实施例中,判断所述参考文件路径集合与所述差异文件路径集合是否匹配,若是,则判定测试通过。
    如上例中,若程序测试人员输入的参考文件路径集合为A文件和B文件的文件路径(优选为相对路径,便于比较),而差异文件路径集合为A文件和B文件的文件路径(优选为相对路径,便于比较)。则参考文件路径集合与差异文件路径集合相同,可判定测试通过。
    程序测试人员也可在输入的参考文件路径集合中使用正则表达式等定义参考文件路径集合中的文件路径的文件名,在比对参考文件路径集合与差异文件路径集合时,若差异文件路径集合中的A文件和B文件的文件路径中的文件名可与参考文件路径集合中的文件路径中的文件名通过正则表达式匹配,则判定测试通过。
    判定测试通过之后,则可展示测试通过的提示信息。
    再如上例中,若差异文件路径集合中仅包含A文件的文件路径,则通过比较差异文件路径集合与参考文件路径集合可得到差异文件路径集合与参考文件路径集合不匹配(少了B文件的文件路径),则可判定测试不通过,可展示参考文件路径集合与所述差异文件路径集合中存在差异的文件路径(即展示B文件的文件路径)。
    在一个实施例中,检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤还可定期执行,也就是说,可每隔预设的时间获取目标目录下的文件路径集合作为采样文件路径集合,执行上述步骤S106至S108。而在该实施例中,判定测试不通过的步骤之后还包括:将所述采样文件路径集合作为基准文件路径集合,执行检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤。
    也就是说,若程序测试人员输入的并不是单一的测试指令,而是包含多条可顺序、循环、分支或递归执行的测试指令,则可通过定期周期性获取测试前输入的目标目录下的文件路径集合作为采样文件路径集合,并判断根据采样文件路径集合与基准文件路径集合生成的差异文件路径集合与参考文件路径集合是否匹配,若存在不同,则将该采样文件路径集合作为基准文件路径集合,并与下一个周期检测到的采样文件路径集合进行比对生成差异文件路径集合,然后继续执行上述步骤S106和S108,从而可在测试过程中就将差异文件路径集合与参考文件路径集合之间存在差异的文件路径展示给程序测试人员,程序测试人员通过观察程序测试过程以及展示的存在差异的文件路径,即可了解程序运行过程在哪一环节出现问题bug,从而方便程序测试人员对待测程序进行修改,提高了操作的便利性。
    进一步的,检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤之前还包括:获取输入的应用标识。
    还可检测所述与应用标识对应的测试指令,将获取检测到的测试指令的指令标识,将所述指令标识作为测试中的指令标识并缓存,若缓存中已存在测试中的指令标识,则将测试中的指令标识更新。
    应用标识即为待测应用程序的标识信息,可以是进程号或者待测应用程序的启动路径(例如windows系统中的exe文件路径,或者android系统中的apk文件路径)。也就是说,程序测试人员在对待测应用程序进行测试之前可先输入待测应用程序对应的目标目录,以及选择待测应用程序的应用标识,然后开始输入测试指令或测试脚本进行测试。
    而在测试过程中,优选的,可通过消息钩子hook或监听器对象检测与所述应用标识对应的测试指令。也就是说,基于本方法的测试程序或测试插件,可通过对待测应用程序添加消息钩子hook程序(windows系统)或者在虚拟机上添加监听器对象(android系统)来监听待测应用程序在运行过程中接收到的测试指令。测试中的指令标识即为待测应用程序当前正在处理的测试指令。测试程序或测试插件可以全局变量存储该测试中的指令标识。
    如前例中,若用户编写的测试脚本为依次执行创建A、B、C文件的测试指令,则在通过消息钩子或监听器对象检测到待测应用程序接收到了创建A文件的测试指令时,此时测试中的指令标识即为创建文件A的测试指令的指令标识,当监听到再次输入创建B文件的测试指令时,则将创建文件B的测试指令的指令标识作为测试中的指令标识存储(创建文件A的测试指令的指令标识已被取代),从而表示待测程序当前正在进行创建文件B的操作。
    进一步的,检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤还包括:获取所述测试中的指令标识,所述检测得到的采样文件路径集合与所述测试中的指令标识对应。
    也就是说,定期检测得到的采样文件路径集合与当前待测程序正在处理的测试指令对应。如上例中,在测试中的指令标识为创建文件A的测试指令的指令标识时,此时一次或多次采样得到的采样文件路径集合均与创建文件A的测试指令的指令标识对应,用于表示该采样文件路径集合是在待测应用程序进行创建文件A的过程中获取到的,若后续测试中的指令标识被更新为创建文件B的测试指令的指令标识,则此后一次或多次采样得到的采样文件路径集合均与创建文件B的测试指令的指令标识对应,用于表示该采样文件路径集合是在待 测应用程序进行创建文件B的过程中获取到的。
    进一步的,展示所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径的步骤还包括:将所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径与所述测试中的指令标识对应展示。
    如上例中,若创建文件A的过程中创建失败,采样文件路径集合中没有文件A的文件路径,因此差异文件路径集合与参考文件路径集合存在差异的文件路径即为文件A的文件路径,且此时缓存中的测试中的指令标识为创建文件A的测试指令的指令标识,因此可将该指令标识与文件A的文件路径展示给程序测试人员。
    同样,若后续创建文件B的过程成功而创建文件C的过程均失败,则最终展示给程序测试人员的提示信息可以是:
    “在执行创建文件A的指令时,文件路径缺少文件A”;
    “在执行创建文件C的指令时,文件路径缺少文件C”的提示信息。
    使得程序测试人员即可获知待测程序在创建文件A和C时存在问题,而创建文件B时没有问题,从而可帮助程序测试人员快速定位程序问题的所在,提高了操作的便利性。
    在一个实施例中,如图2所示,还相应提出了一种与前述的文件发送方法对应的文件发送装置,包括目标目录获取模块102、文件路径检测模块104、文件路径比对模块106以及测试结果生成模块108,其中:
    目标目录获取模块102,用于获取输入的目标目录,获取所述目标目录下的文件路径集合作为基准文件路径集合。
    文件路径检测模块104,用于检测所述目标目录下的文件路径的变化得到采样文件路径集合。
    文件路径比对模块106,用于比较所述基准文件路径集合和采样文件路径集合生成差异文件路径集合。
    测试结果生成模块108,用于获取预设的参考文件路径集合,通过比较参考文件路径集合和所述差异文件路径集合生成测试结果。
    在一个实施例中,测试结果生成模块108还用于判断所述参考文件路径集合与所述差异文件路径集合是否匹配,若是,则判定测试通过。
    在一个实施例中,测试结果生成模块108还用于在参考文件路径集合与所述差异文件路径集合不同时,判定测试不通过,并展示所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径。
    在一个实施例中,测试结果生成模块108还用于将所述采样文件路径集合作为基准文件路径集合,执行检测所述目标目录下的文件路径的变化得到采样文件路径集合的步骤。
    在一个实施例中,如图2所示,对文件操作进行测试的装置还包括待测应用选取模块110,用于获取输入的应用标识。对文件操作进行测试的装置还包括测试指令获取模块112,用于检测所述与应用标识对应的测试指令,将获取检测到的测试指令的指令标识,将所述指令标识作为测试中的指令标识并缓存,若缓存中已存在测试中的指令标识,则将测试中的指令标识更新。
    在一个实施例中,文件路径检测模块104还用于获取所述测试中的指令标识,所述检测得到的采样文件路径集合与所述测试中的指令标识对应。
    在一个实施例中,测试结果生成模块108还用于将所述参考文件路径集合与所述差异文件路径集合中存在差异的文件路径与所述测试中的指令标识对应展示。
    在一个实施例中,测试指令获取模块112还用于通过消息钩子hook或监听器对象检测与所述应用标识对应的测试指令。
    在一个实施例中,目标目录获取模块102还用于遍历所述目标目录下的子目标目录,获取所述目标目录以及所述遍历到的子目标目录下的文件路径集合。
    综上所述,实施本发明实施例,将具有如下有益效果:
    采用了上述对文件操作进行测试的方法及装置之后,程序测试人员只需要在测试之前先选择待测应用程序的文件操作的对应的目标目录,然后进行程序测试,即可在测试结束后自动得到测试前后目标目录下产生变化的差异文件路径集合,并可自动将其与程序测试人员预先设定的参考文件路径集合进行比对,判断待测程序是否运行正常。测试过程无需人工对目标目录下的文件变化进行记录和比较,全部均可自动化完成,从而提高了操作的便利性。
    本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
    以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

    关 键  词:
    文件 操作 进行 测试 方法 装置
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:对文件操作进行测试方法及装置.pdf
    链接地址:https://www.zhuanlichaxun.net/p-1629067.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1