目录上传方法、数据发布方法、终端及服务器的制造方法

文档序号:9846789阅读:300来源:国知局
目录上传方法、数据发布方法、终端及服务器的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别涉及一种目录上传方法、数据发布方法、终端及服务器。
【背景技术】
[0002]为了保证应用程序的正确性、完整性、安全性,终端会自动收集应用程序运行时所使用到的源代码,并将收集到的源代码存储在指定目录下。该指定目录称为监控目录,根据监控目录下存储的源代码,服务器可得到应用程序的代码覆盖率。代码覆盖率作为应用程序测试中的一种量度,可帮助研发人员发现应用程序中存在的缺陷。因此,有必要将监控目录上传至服务器,并将监控目录中代码覆盖率发布出来,以使研发人员根据代码覆盖率对应用程序进行完善,降低应用程序在运行过程中的错误率。
[0003]相关技术在上传监控目录,并发布监控目录中代码覆盖率时,采用如下步骤:
[0004]第一步,用户获取应用程序的源代码及配置文件之后,将应用程序的源代码及配置文件打包存储在服务器上,得到一个软件安装包及一个.gcno文件,该.gcno文件用于存储应用程序的源代码;
[0005]第二步,终端获取服务器上的软件安装包,运行该安装包,同时生成一个.gcda文件,该.gcda文件位于监控目录下,用于存储该安装包运行时所使用的源代码;
[0006]第三步,用户通过数据线将监控目录上传到服务器中.gcno文件所在的目录下。
[0007]第四步,服务器接收Icov命令,并根据Icov命令,将指定目录下将每个.gcda文件分别与.gcno文件合并,得到多个.1nfo文件,该.1nfo文件用于保存代码覆盖率;
[0008]第五步,服务器对所有.1nfo文件进行整合,得到一个整合文件;
[0009]第六步,服务器接收genhtml命令,并根据genhtml命令,将整合文件转变为html形式进行存储;
[0010]第七步,当研发人员需要查看测试结果时,研发人员通过该服务器获取更新的代码覆盖率数据。
[0011]在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
[0012]由于上传监控目录的过程,需要用户手动操作,而此过程需要用户对计算机技术有很深的了解,学习成本较高,且用户手动上传监控目录,不仅不够便捷,而且耗时较长。另夕卜,相关技术发布在应用程序运行结束后,才将代码覆盖率数据发布,发布的代码覆盖率缺乏时效性,且研发人员想要查看最新的代码覆盖率时,需要通过指定的服务器进行查看,查看方式并不便捷。

【发明内容】

[0013]为了解决相关技术的问题,本发明实施例提供了一种目录上传方法、数据发布方法、终端及服务器。所述技术方案如下:
[0014]第一方面,提供了一种目录上传方法,所述方法包括:
[0015]实时获取监控目录下所有文件的最新修改时间;
[0016]将所述监控目录下每个文件的最新修改时间与存储的所述每个文件的初始修改时间进行比对;
[0017]当任一文件的最新修改时间与所述任一文件的初始修改时间不相同,则将所述监控目录上传到服务器的接收目录。
[0018]结合第一方面,在第一方面的第一种可能的实现方式中,所述实时获取监控目录下所有文件的最新修改时间之前,还包括:
[0019]存储监控信息,所述监控信息包括所述监控目录、服务器的网络协议IP地址及所述服务器的接收目录。
[0020]结合第一方面,在第一方面的第二种可能的实现方式中,所述实时获取监控目录下所有文件的最新修改时间之前,还包括:
[0021]每隔预设时长,触发时间获取指令,根据所述时间获取指令执行所述实时获取监控目录下所有文件的最新修改时间的步骤;或,
[0022]当检测到预设事件时,触发时间获取指令,根据所述时间获取指令执行所述实时获取监控目录下所有文件的最新修改时间的步骤。
[0023]结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述将所述监控目录下每个文件的最新修改时间与存储的每个文件的初始修改时间进行比对之前,还包括:
[0024]存储所述监控目录下所有文件的初始修改时间;或,
[0025]当建立所述监控目录时,存储所述监控目录下所有文件的初始修改时间;或,
[0026]当所述监控目录中包括新建文件时,存储所述新建文件的初始修改时间。
[0027]结合第一方面,在第一方面的第四种可能的实现方式中,所述将所述监控目录上传到接收目录,包括:
[0028]根据终端信息,修改所述监控目录的服务器目录名;
[0029]根据所述服务器的IP地址,将目录名修改后的监控目录上传到所述IP地址对应的接收目录。
[0030]结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述服务器目录名由终端标识与所述监控目录的目录名组成。
[0031]结合第一方面,在第一方面的第六种可能的实现方式中,所述将所述监控目录上传到接收目录之后,还包括:
[0032]根据所述每个文件的最新修改时间,更新所述存储的所述每个文件的初始修改时间。
[0033]第二方面,提供了一种数据发布方法,所述方法包括:
[0034]实时获取所述接收目录中当前监控目录;
[0035]根据所述当前监控目录和存储的监控目录,判断是否存在更新数据;
[0036]当存在更新数据,获取所述更新数据;
[0037]根据所述更新数据,生成代码覆盖率;
[0038]将所有代码覆盖率进行整合,得到整合文件;
[0039]将所述整合文件发布到指定网站。
[0040]结合第二方面,在第二方面的第一种可能的实现方式中,根据所述当前监控目录和存储的监控目录,判断是否存在更新数据,包括:
[0041]将所述当前监控目录与所述存储的监控目录进行比对;
[0042]若所述当监控目录中存在新增的监控目录,则判断存在更新数据;
[0043]若所述当前监控目录中不存在新增的监控目录,则获取所述当前监控目录下所有文件的最新修改时间,将所述当前监控目录下所有文件的最新修改时间与所述存储的监控目录下所有文件的初始修改时间进行比对,当任一文件的最新修改时间与初始修改时间不相同,则判断所述服务器上存在更新数据。
[0044]结合第二方面,在第二方面的第二种可能的实现方式中,所述根据所述当前监控目录和存储的监控目录,判断存在更新数据之前,还包括:
[0045]存储所述接收目录下所有监控目录;或,
[0046]当建立所述接收目录时,存储所述接收目录下所有监控目录;或,
[0047]所述接收目录中包含新目录时,存储所述新目录。
[0048]结合第二方面,在第二方面的第三种可能的实现方式中,所述根据所述更新数据,生成代码覆盖率,包括:
[0049]获取所述更新数据所在的监控目录;
[0050]将当前应用程序源代码拷贝到所述更新数据所在的监控目录下;
[0051]在所述更新数据所在的监控目录中,计算所述更新数据与所述应用程序源代码的比值,得到代码覆盖率。
[0052]结合第二方面,在第二方面的第四种可能的实现方式中,所述将所述整合文件发布到指定网站,包括:
[0053]将所述整合文件转化为网页形式;
[0054]将网页形式的文件发布到所述指定网站。
[0055]第三方面,提供了一种终端,所述终端包括:
[0056]获取模块,用于实时获取监控目录下所有文件的最新修改时间;
[0057]比对模块,用于将所述监控目录下每个文件的最新修改时间与存储的所述每个文件的初始修改时间进行比对;
[0058]上传模块,用于当任一文件的最新修改时间与所述任一文件的初始修改时间不相同,将所述监控目录上传到服务器的接收目录。
[0059]结合第三方面,在第三方面的第一种可能的实现方式中,所述终端,还包括:
[0060]第一存储模块,用于存储监控信息,所述监控信息包括所述监控目录、服务器的网络协议IP地址及所述服务器的接收目录。
[0061]结合第三方面,在第三方面的第二种可能的实现方式中,所述终端,还包括:
[0062]触发模块,用于每隔预设时长,触发时间获取指令,根据所述时间获取指令执行所述实时获取监控目录下所有文件的最新修改时间的步骤;或,当检测到预设事件时,触发时间获取指令,根据所述时间获取指令执行所述实时获取监控目录下所有文件的最新修改时间的步骤。
[0063]结合第三方面,在第三方面的第三种可能的实现方式中,所述终端,还包括:
[0064]第二存储模块,用于存储所述监控目录下所有文件的初始修改时间;或,当建立所述监控目录时,存储所述监控目录下所有文件的初始修改时间;或,当所述监控目录中包括新建文件时,存储所述新建文件的初始修改时间。
[0065]结合第三方面,在第三方面的第四种可能的实现方式中,所述上传模块,包括:
[0066]修改单元,用于根据终端信息,修改所述监控目录的服务器目录名;
[0067]上传单元,用于根据所述服务器的IP地址,将目录名修改后的监控目录上传到所述IP地址对应的接收目录。
[0068]结合第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述修改模块修改得到的服务器目录名由终端标识与所述监控目录的目录名组成。
[0069]结合第三方面,在第三方面的第六种可能的实现方式中,所述终端,还包括:
[0070]更新模块,用于根据所述每个文件的最新修改时间,更新所述存储的所述每个文件的初始修改时间。
[0071]第四方面,提供了一种服务器,所述服务器包括:
[0072]第一获取模块,用于实时获取所述接收目录中当前监控目录;
[0073]判断模块,用于根据所述当前监控目录和存储的监控目录,判断是否存在更新数据;
[0074]第二获取模块,用于当存在更新数据,获取所述更新数据;
[0075]生成模块,用于根据所述更新数据,生成代码覆盖率;
[0076]整合模块,用于将所有代码覆盖率进行整合,得到整合文件;
[0077]发布模块,用于将所述整合文件发布到指定网站。
[0078]结合第四方面,在第四方面的第一种可能的实现方式中,所述判断模块,包括:
[0079]比对单元,用于将所述当前监控目录与所述存储的监控目录进行比对;
[0080]第一判断单元,用于当所述当监控目录中存在新增的监控目录,判断存在更新数据;
[0081]第二判断单元,用于当所述当前监控目录中不存在新增的监控目录,获取所述当前监控目录下所有文件的最新修改时间,将所述当前监控目录下所有文件的最新修改时间与所述存储的监控目录下所有文件的初始修改时间进行比对,当任一文件的最新修改时间与初始修改时间不相同,判断存在更新数据。
[0082]结合第四方面,在第四方面的第二种可能的实现方式中,所述服务器,还包括:
[0083]存储模块,用于存储所述接收目录下所有监控目录;或,当建立所述接收目录时,存储所述接收目录下所有监控目录;或,所述接收目录中包含新目录时,存储所述新目录。
[0084]结合第四方面,在第四方面的第三种可能的实现方式中,所述生成模块,包括:
[0085]获取单元,用于获取所述更新数据所在的监控目录;
[0086]拷贝单元,用于将当前应用程序源代码拷贝到所述更新数据所在的监控目录下;
[0087]计算单元,用于在所述更新数据所在的监控目录中,计算所述更新数据与所述应用程序源代码的比值,得到代码覆盖率。
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1