著录项信息
专利名称 | 软件安装包检测方法及装置 |
申请号 | CN201410208948.6 | 申请日期 | 2014-05-16 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2014-08-20 | 公开/公告号 | CN103995774A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F11/36 | IPC分类号 | G;0;6;F;1;1;/;3;6查看分类表>
|
申请人 | 北京金山网络科技有限公司 | 申请人地址 | 广东省珠海市横琴新区宝华路6号105室-53967(集中办公区)
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 珠海豹好玩科技有限公司 | 当前权利人 | 珠海豹好玩科技有限公司 |
发明人 | 望帆 |
代理机构 | 北京柏杉松知识产权代理事务所(普通合伙) | 代理人 | 项京;马敬 |
摘要
本发明实施例公开了一种软件安装包检测方法及装置。该软件安装包检测方法包括:获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;依据所述获取的存储路径,获取所述待检测软件安装包;根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;输出所述获取的检测结果信息。通过利用本方案,可以达到提高检测效率,降低人工成本的目的。
1.一种软件安装包检测方法,其特征在于,包括:
获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
依据所述获取的存储路径,获取所述待检测软件安装包;
根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;其中,预先构建与每个所述待检测项目对应的可调用程序模块包括:预先将软件安装包所对应的各个待检测项目的检测流程分别封装为可调用程序模块;
运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;
输出所述获取的检测结果信息。
2.根据权利要求1所述的方法,其特征在于,
所述待检测项目包括文件差异检测;
所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;
比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
3.根据权利要求2所述的方法,其特征在于,
所述获取与所述获取的待检测软件安装包内的文件对应的目标文件列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包中的文件的路径信息;
根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;
所述获取与参考软件安装包内的文件对应的参考文件列表,包括:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;
或者,
到预先设置的地址处下载所述参考文件列表。
4.根据权利要求3所述的方法,其特征在于,
所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。
5.根据权利要求1所述的方法,其特征在于,
所述待检测项目包括数字签名检测;
所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;
对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。
6.根据权利要求5所述的方法,其特征在于,
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表,包括:
到预先设置的地址处下载所述参考数字签名列表;
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标数字签名列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;
根据所述数字签名信息,生成所述目标数字签名列表。
7.根据权利要求1所述的方法,其特征在于,
所述待检测项目包括自签名检测;
所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;
对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
8.根据权利要求7所述的方法,其特征在于,
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表,包括:
到预先设置的地址处下载所述参考自签名列表;
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标自签名列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;
根据所述自签名信息,生成所述目标自签名列表。
9.根据权利要求3、6、8任意一项所述的方法,其特征在于,
所述列表为xml格式;
所述预先设置的地址位于预先设置的svn目录下。
10.根据权利要求1至8中任一项所述的方法,其特征在于,在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,还包括:
提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目,包括:
获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述输出所述获取的检测结果信息,包括:
在第二web交互界面上输出所述获取的检测结果信息。
11.一种软件安装包检测装置,其特征在于,包括:
信息获取模块,用于获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
安装包获取模块,用于依据所述获取的存储路径,获取所述待检测软件安装包;
程序调用模块,用于根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;其中,预先构建与每个所述待检测项目对应的可调用程序模块包括:预先将软件安装包所对应的各个待检测项目的检测流程分别封装为可调用程序模块;
程序运行模块,用于运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;
检测结果输出模块,用于输出所述获取的检测结果信息。
12.根据权利要求11所述的装置,其特征在于,
所述待检测项目包括文件差异检测;
所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;
所述程序运行模块,具体用于运行所述用于文件差异检测的可调用程序模块来执行如下步骤:获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
13.根据权利要求12所述的装置,其特征在于,所述程序运行模块用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包中的文件的路径信息;根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;
所述程序运行模块用于:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;或者,到预先设置的地址处下载所述参考文件列表。
14.根据权利要求13所述的装置,其特征在于,
所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。
15.根据权利要求11所述的装置,其特征在于,
所述待检测项目包括数字签名检测;
所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;
所述程序运行模块,具体用于运行所述用于数字签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。
16.根据权利要求15所述的装置,其特征在于,所述程序运行模块用于:
到预先设置的地址处下载所述参考数字签名列表;
所述程序运行模块用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;根据所述数字签名信息,生成所述目标数字签名列表。
17.根据权利要求11所述的装置,其特征在于,
所述待检测项目包括自签名检测;
所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;
所述程序运行模块,具体用于运行所述用于自签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
18.根据权利要求17所述的装置,其特征在于,
所述程序运行模块用于:
到预先设置的地址处下载所述参考自签名列表;
所述程序运行模块用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;根据所述自签名信息,生成所述目标自签名列表。
19.根据权利要求13、16、18任意一项所述的装置,其特征在于,
所述列表为xml格式;
所述预先设置的地址位于预先设置的svn目录下。
20.根据权利要求11至18中任一项所述的装置,其特征在于,还包括:
界面提供模块,用于在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述信息获取模块用于:
获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述检测结果输出模块用于:
在第二web交互界面上输出所述获取的检测结果信息。
软件安装包检测方法及装置\n技术领域\n[0001] 本发明涉及软件测试领域,特别涉及一种软件安装包检测方法及装置。\n背景技术\n[0002] 所谓软件安装包,其为可自行解压缩文件的集合,其包括软件安装所需要的所有文件。其中,运行某个软件安装包,即将此软件安装包内的所有文件释放到硬盘上,完成修改注册表、修改系统设置、创建快捷方式等工作。实际应用中,为了确保软件安装包在被用户下载后能够正常安装并使用,对软件安装包进行发布前的测试是非常有必要的,例如,对软件安装包进行测试,可以确保首次安装、升级、完整的或自定义的安装都能进行。\n[0003] 现有技术中,当一个软件安装包测试通过,确认可发布时,通常还需要经过一系列的发布检查操作,例如,确定软件安装包与上一版本软件安装包或预设的标准软件安装包之间的差异信息,检查安装包内文件的数字签名、自签名是否符合标准等。具体的发布检查过程可以:在一个软件安装包进入发布流程后,一般都是通过人工方式分别检查软件安装包本身和软件安装包内文件的数字签名、自签名是否都符合标准,对比软件安装包内各个文件是否存在预期之外的增减情况等。\n[0004] 但是,上述检查操作所采用的人工方式无疑效率低,人工成本较高;而且,如上检查的检测标准也会随之快速迭代不断更新,标准更新后给人工检查无形中增加较多的成本。\n发明内容\n[0005] 基于上述问题,本发明实施例公开了一种软件安装包检测方法及装置,以达到提高检测效率,降低人工成本的目的。技术方案如下:\n[0006] 第一方面,本发明实施例提供了一种软件安装包检测方法,包括:\n[0007] 获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0008] 依据所述获取的存储路径,获取所述待检测软件安装包;\n[0009] 根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;\n[0010] 运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;\n[0011] 输出所述获取的检测结果信息。\n[0012] 可选的,所述待检测项目包括文件差异检测;\n[0013] 所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;\n[0014] 所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:\n[0015] 获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;\n[0016] 比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。\n[0017] 可选的,所述获取与所述获取的待检测软件安装包内的文件对应的目标文件列表,包括:\n[0018] 解压所述获取的待检测软件安装包;\n[0019] 获取所述解压后的待检测软件安装包中的文件的路径信息;\n[0020] 根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;\n[0021] 所述获取与参考软件安装包内的文件对应的参考文件列表,包括:\n[0022] 获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;\n[0023] 或者,\n[0024] 到预先设置的地址处下载所述参考文件列表。\n[0025] 可选的,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。\n[0026] 可选的,所述待检测项目包括数字签名检测;\n[0027] 所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;\n[0028] 所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:\n[0029] 获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;\n[0030] 对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。\n[0031] 可选的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表,包括:\n[0032] 到预先设置的地址处下载所述参考数字签名列表;\n[0033] 所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标数字签名列表,包括:\n[0034] 解压所述获取的待检测软件安装包;\n[0035] 获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;\n[0036] 根据所述数字签名信息,生成所述目标数字签名列表。\n[0037] 可选的,所述待检测项目包括自签名检测;\n[0038] 所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;\n[0039] 所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:\n[0040] 获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;\n[0041] 对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。\n[0042] 可选的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表,包括:\n[0043] 到预先设置的地址处下载所述参考自签名列表;\n[0044] 所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标自签名列表,包括:\n[0045] 解压所述获取的待检测软件安装包;\n[0046] 获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;\n[0047] 根据所述自签名信息,生成所述目标自签名列表。\n[0048] 可选的,所述列表为xml格式;\n[0049] 所述预先设置的地址位于预先设置的svn目录下。\n[0050] 可选的,在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,还包括:\n[0051] 提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;\n[0052] 所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目,包括:\n[0053] 获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0054] 所述输出所述获取的检测结果信息,包括:\n[0055] 在第二web交互界面上输出所述获取的检测结果信息。\n[0056] 第二方面,本发明实施例提供了一种软件安装包检测装置,包括:\n[0057] 信息获取模块,用于获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0058] 安装包获取模块,用于依据所述获取的存储路径,获取所述待检测软件安装包;\n[0059] 程序调用模块,用于根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;\n[0060] 程序运行模块,用于运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;\n[0061] 检测结果输出模块,用于输出所述获取的检测结果信息。\n[0062] 可选的,所述待检测项目包括文件差异检测;\n[0063] 所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;\n[0064] 所述程序运行模块,具体用于运行所述用于文件差异检测的可调用程序模块来执行如下步骤:获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。\n[0065] 可选的,所述程序运行模块用于:\n[0066] 解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包中的文件的路径信息;根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;\n[0067] 所述程序运行模块用于:\n[0068] 获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;或者,到预先设置的地址处下载所述参考文件列表。\n[0069] 可选的,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。\n[0070] 可选的,所述待检测项目包括数字签名检测;\n[0071] 所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;\n[0072] 所述程序运行模块,具体用于运行所述用于数字签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。\n[0073] 可选的,所述程序运行模块用于:\n[0074] 到预先设置的地址处下载所述参考数字签名列表;\n[0075] 所述程序运行模块用于:\n[0076] 解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;根据所述数字签名信息,生成所述目标数字签名列表。\n[0077] 可选的,所述待检测项目包括自签名检测;\n[0078] 所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;\n[0079] 所述程序运行模块,具体用于运行所述用于自签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。\n[0080] 可选的,所述程序运行模块用于:\n[0081] 到预先设置的地址处下载所述参考自签名列表;\n[0082] 所述程序运行模块用于:\n[0083] 解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;根据所述自签名信息,生成所述目标自签名列表。\n[0084] 可选的,所述列表为xml格式;\n[0085] 所述预先设置的地址位于预先设置的svn目录下。\n[0086] 可选的,本发明实施例所提供的软件安装包检测装置还包括:\n[0087] 界面提供模块,用于在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;\n[0088] 所述信息获取模块用于获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0089] 所述检测结果输出模块用于在第二web交互界面上输出所述获取的检测结果信息。\n[0090] 与现有技术相比,本方案中,预先将软件安装包所对应的各个需要检测的项目的检测流程分别封装成可调用程序模块,即构建模块化的检查点,在软件安装包检测过程中,获取到待检测软件安装包和待检测项目后,调用所需的可调用程序模块,进而通过运行所调用的可调用程序模块即可获取待检测项目的检测结果信息,因此,可以达到提高检测效率,降低人工成本的目的。\n附图说明\n[0091] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0092] 图1为本发明实施例所提供的一种软件安装包检测方法的流程图;\n[0093] 图2为本发明实施例所提供的一种软件安装包检测装置的结构示意图。\n具体实施方式\n[0094] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0095] 为了达到提高检测效率,降低人工成本的目的,本发明实施例提供了一种软件安装包检测方法及装置。\n[0096] 下面首先对本发明实施例所提供的一种软件安装包检测方法进行介绍。\n[0097] 需要说明的是,本发明实施例所提供的软件安装包检测方法适用于电子设备中。\n其中,在实际应用中,该电子设备可以为笔记本电脑、台式电脑或服务器等,这都是合理的。\n[0098] 如图1所示,一种软件安装包检测方法,可以包括:\n[0099] S101,获取待检测软件安装包的存储路径以及针对该待检测软件安装包的待检测项目;\n[0100] S102,依据所述获取的存储路径,获取该待检测软件安装包;\n[0101] 在软件安装包的检测过程中,可以首先获取待检测软件安装包的存储路径以及针对该待检测软件安装包的待检测项目,以在获取到待检测软件安装包的存储路径后,可以依据所述获取的存储路径,获取所述待检测软件安装包,进而基于该待检测软件安装包执行后续的步骤。\n[0102] 通常情况下,软件开发人员在软件开发完成之后,会将软件安装包存储在一个固定的位置,测试人员在检测软件安装包时,首先需要确定软件安装包的存储路径以及需要检测的待检测项目。在本发明实施例中,在测试人员确定软件安装包的存储路径以及需要检测的待检测项目后,可通过人工的方式输入存储路径和待检测项目,可选的,在S101中,可通过接收测试人员输入的存储路径和待检测项目,来获取待检测安装包的存储路径和待检测项目。\n[0103] 其中,所获取的待检测软件安装包的存储路径为待检测软件安装包的本地存储路径,其中,通过该本地存储路径查找到该待检测的软件安装包。而在实际应用中,该待检测项目可以包括:文件差异检测、数字签名检测和自签名检测中的至少一种,当然并不局限于此。\n[0104] 本领域技术人员可以理解的是,文件差异是待检测安装包中的文件与参考软件安装包中的文件的差别,文件差异检测是指在软件安装包发布之前,为了确保安装包内的文件或文件夹正确性,对软件安装包内的文件或文件夹进行的一种检测;自签名为软件公司内部自用的一套文件签名校验机制,用于确保文件准确性,通常情况下,在软件安装包发布之前,为保证自签名信息的正确性,可以对自签名信息进行检测;而数字签名通常使用公钥加密领域的技术实现,用于鉴别数字信息的方法,其中,一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证,通常情况下,在软件安装包发布之前,可以对数字签名进行检测。\n[0105] S103,根据所述获取的待检测项目,调用预先构建的与每个待检测项目对应的可调用程序模块;\n[0106] S104,运行可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个待检测项目的检测结果信息;\n[0107] 需要强调的是,在本发明实施例中,预先将各个待检测项目的检测流程封装为可调用程序模块,当确定即获取待检测项目后,自动调用并运行相应的可调用程序模块,实现获取待测试软件包的待检测项目的检测结果信息,因此,不需要人工进行这些项目的检测,使得检测可以自动进行,降低了人工成本也提高了检测效率。而且,在需要增加新的检测项目时,可以方便的增加新的可调用模块即可,方便检测的更新和修改。\n[0108] 本发明实施例中,在获取到待检测项目后,可以基于所述获取的待检测项目,调用预先构建的与每个待检测项目对应的可调用程序模块。而在调用预先构建的与每个待检测项目对应的可调用程序模块后,可以运行可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个待检测项目的检测结果信息。\n[0109] 需要强调的是,不同待检测项目对应不同的可调用程序模块,即:待检测项目与可调用程序模块具有唯一对应性。例如:作为一种待检测项目的文件差异检测可以对应有用于文件差异检测的可调用程序模块;作为一种待检测项目的数字签名检测可以对应有用于数字签名检测的可调用程序模块;作为一种待检测项目的自签名检测可以对应有用于自签名检测的可调用程序模块。\n[0110] 其中,不同的待检测项目所对应的检测结果信息不同。例如,当待检测项目包括文件差异检测时,检测结果信息为文件差异信息,而文件差异信息具体可以包括:文件增减情况、文件夹增减情况、文件路径异常中的一种或多种;当待检测项目包括数字签名检测时,检测结果信息为表明数字签名正确与否的信息;当待检测项目为自签名检测时,检测结果信息可以为表明自签名正确与否的信息。\n[0111] S105,输出获取的检测结果信息。\n[0112] 在获取到每个待检测项目的检测结果信息后,可以输出所获取的检测结果信息,以使得测试人员了解检测结果信息。\n[0113] 与现有技术相比,本方案中,预先将软件安装包所对应的各个需要检测的项目的检测流程分别封装成可调用程序模块,即构建模块化的检查点,在软件安装包检测过程中,获取到待检测软件安装包和待检测项目后,调用所需的可调用程序模块,进而通过运行所调用的可调用程序模块即可获取待检测项目的检测结果信息,因此,可以达到提高检测效率,降低人工成本的目的。\n[0114] 更进一步的,在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,还可以包括:\n[0115] 提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;\n[0116] 所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目,可以包括:\n[0117] 获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0118] 所述输出所述获取的检测结果信息,可以包括:\n[0119] 在第二web交互界面上输出所述获取的检测结果信息。\n[0120] 可见,通过web交互界面的展示,使得整个检测流程web化,从而进一步提高用户的使用体验。\n[0121] 需要说明的是,上述的“第一web交互界面”中的“第一”以及“第二web交互界面”中的“第二”仅仅为了区分不同的交互界面,并不具有任何限定作用。并且,上述所给出的待检测软件安装包的存储路径输入入口和针对待检测软件安装包的待检测项目输入入口的具体提供形式并不局限于web交互界面。同样的,上述所给出的输出检测结果信息的具体输出形式并不局限于web交互界面。\n[0122] 由于不同的待检测项目的具体检测流程不同,下面将基于不同的待检测项目,介绍运行可调用程序模块对待检测软件安装包进行检测的具体过程。\n[0123] (1)当所述待检测项目包括文件差异检测时,所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;\n[0124] 相应的,所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测可以包括:\n[0125] 获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;\n[0126] 比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。\n[0127] 需要说明的是,为了更清楚地体现待检测安装包与参考软件安装包之间的差异信息,可以将获取的待检测安装包与参考软件安装包之间的差异信息按照差异类型进行分类,例如,可以分为多余文件、缺少文件、多余文件夹、缺少文件夹、文件路径异常等,并将分类后的差异文件信息暂存于不同的list(列表)中。\n[0128] 具体的,所述获取与所述获取的待检测软件安装包内的文件对应的目标文件列表可以包括:\n[0129] 解压所述获取的待检测软件安装包;\n[0130] 获取所述解压后的待检测软件安装包中的文件的路径信息;\n[0131] 根据所述路径信息,生成该待检测软件安装包内的文件对应的目标文件列表;\n[0132] 具体的,所述获取与参考软件安装包内的文件对应的参考文件列表可以包括:\n[0133] 获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表。\n[0134] 可以理解的是,可以将生成的参考文件列表上传到某指定位置,以便于列表共享,使得其他使用者可以直接到该指定位置下载该列表。作为一种可选方式,在本发明实施例中,可以预先形成参考文件列表,并将预先形成的参考文件列表放置在预先设置的地址处,在运行用于文件差异检测的可调用程序模块时,到预先设置的地址处下载所述参考文件列表。举例而言,可以结合现有的svn目录,预先将参考文件列表放置在svn目录中,即参考文件列表所在的预先设置的地址位于预先设置的svn目录下,以便于列表共享。其中,svn为suv(subversion)版本管理软件的目录。\n[0135] 需要说明的是,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。并且,在实际应用中,上述的参考文件列表和目标文件列表均可以为xml格式。\n[0136] (2)当所述待检测项目包括数字签名检测时,所述调用的可调用程序模块可以包括:用于数字签名检测的可调用程序模块;\n[0137] 所述运行所述可调用程序模块对所获取的待检测软件安装包进行检测可以包括:\n[0138] 获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;\n[0139] 对比所述参考数字签名列表和目标数字签名列表,以确定目标数字签名列表中的数字签名是否正确。\n[0140] 具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表,可以包括:\n[0141] 到预先设置的地址处下载所述参考数字签名列表;\n[0142] 需要说明的是,在本发明实施例中,可以通过人工的方式预先将与待检测软件安装包内的文件对应的参考数字签名列表放置在预设的地址处,在运行用于数字签名检测的可调用程序模块时,用于数字签名检测的可调用程序模块到预设的地址处下载该参考数字签名列表。举例而言,可以结合现有的svn目录,预先将参考数字签名列表放置在svn目录中,即参考数字签名列表所在的预先设置的地址位于预先设置的svn目录下,以便于列表共享。其中,svn为suv(subversion)版本管理软件的目录。\n[0143] 具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标数字签名列表,可以包括:\n[0144] 解压所述获取的待检测软件安装包;\n[0145] 获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;\n[0146] 根据所述数字签名信息,生成所述目标数字签名列表。\n[0147] 其中,在实际应用中,参考数字签名列表和目标数字签名列表均可以为xml格式。\n[0148] (3)当所述待检测项目包括自签名检测时,所述调用的可调用程序模块可以包括:\n用于自签名检测的可调用程序模块;\n[0149] 所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,可以包括:\n[0150] 获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;\n[0151] 对比参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。\n[0152] 具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表,可以包括:\n[0153] 到预先设置的地址处下载所述参考自签名列表;\n[0154] 需要说明的是,在本发明实施例中,可以通过人工的方式预先将与待检测软件安装包内的文件对应的参考自签名列表放置在预设的地址处,在运行用于自签名检测的可调用程序模块时,用于自签名检测的可调用程序模块到预设的地址处下载该参考自签名列表。举例而言,可以结合现有的svn目录,预先将参考自签名列表放置在svn目录中,即参考自签名列表所在的预先设置的地址位于预先设置的svn目录下,以便于列表共享。其中,svn为suv(subversion)版本管理软件的目录。\n[0155] 具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标自签名列表可以包括:\n[0156] 解压所述获取的待检测软件安装包;\n[0157] 获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;\n[0158] 根据所述自签名信息,生成所述目标自签名列表。\n[0159] 其中,在实际应用中,参考自签名列表和目标自签名列表均可以为xml格式。\n[0160] 需要强调的是,待检测项目包括文件差异检测、数字签名检测和自签名检测中的至少两种时,每一种待检测项目所对应的运行可调用程序模块对待检测软件安装包进行检测的具体过程可以参照上述给出的相应检测过程,在此不作赘述。\n[0161] 相应于上述方法实施例,本发明实施例还提供了一种软件安装包检测装置,如图2所示,可以包括:\n[0162] 信息获取模块210,用于获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0163] 安装包获取模块220,用于依据所述获取的存储路径,获取所述待检测软件安装包;\n[0164] 程序调用模块230,用于根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;\n[0165] 程序运行模块240,用于运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;\n[0166] 检测结果输出模块250,用于输出所述获取的检测结果信息。\n[0167] 与现有技术相比,本方案中,预先将软件安装包所对应的各个需要检测的项目的检测流程分别封装成可调用程序模块,即构建模块化的检查点,在软件安装包检测过程中,获取到待检测软件安装包和待检测项目后,调用所需的可调用程序模块,进而通过运行所调用的可调用程序模块即可获取待检测项目的检测结果信息,因此,可以达到提高检测效率,降低人工成本的目的。\n[0168] 其中,所述待检测项目可以包括文件差异检测;\n[0169] 所述调用的可调用程序模块可以包括:用于文件差异检测的可调用程序模块;\n[0170] 所述程序运行模块240,具体用于运行所述用于文件差异检测的可调用程序模块来执行如下步骤:获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。\n[0171] 具体的,所述程序运行模块240用于:\n[0172] 解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包中的文件的路径信息;根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;\n[0173] 所述程序运行模块240用于:\n[0174] 获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;或者,到预先设置的地址处下载所述参考文件列表。\n[0175] 具体的,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。\n[0176] 具体的,所述参考文件列表和所述目标文件列表均可以为xml格式;并且,所述参考文件列表所在的预先设置的地址可以位于预先设置的svn目录下。\n[0177] 其中,所述待检测项目可以包括数字签名检测;\n[0178] 所述调用的可调用程序模块可以包括:用于数字签名检测的可调用程序模块;\n[0179] 所述程序运行模块240,具体用于运行所述用于数字签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。\n[0180] 具体的,所述程序运行模块240用于:\n[0181] 到预先设置的地址处下载所述参考数字签名列表;\n[0182] 所述程序运行模块240用于:\n[0183] 解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;根据所述数字签名信息,生成所述目标数字签名列表。\n[0184] 其中,所述参考数字签名列表和所述目标数字签名列表均可以为xml格式;并且,所述参考数字签名列表所在的预先设置的地址可以位于预先设置的svn目录下。\n[0185] 其中,所述待检测项目可以包括自签名检测;\n[0186] 所述调用的可调用程序模块可以包括:用于自签名检测的可调用程序模块;\n[0187] 所述程序运行模块240,具体用于运行所述用于自签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。\n[0188] 具体的,所述程序运行模块240运行所述用于自签名检测的可调用程序模块获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表包括:\n[0189] 到预先设置的地址处下载所述参考自签名列表;\n[0190] 所述程序运行模块240用于:\n[0191] 解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;根据所述自签名信息,生成所述目标自签名列表。\n[0192] 其中,所述参考自签名列表和所述目标自签名列表均可以为xml格式;并且,所述参考自签名列表所在的预先设置的地址可以位于预先设置的svn目录下。\n[0193] 更进一步的,本发明实施例所提供的软件安装包检测装置还可以包括:\n[0194] 界面提供模块,用于在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;\n[0195] 所述信息获取模块210用于获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;\n[0196] 所述检测结果输出模块250用于在第二web交互界面上输出所述获取的检测结果信息。\n[0197] 对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。\n[0198] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。\n[0199] 本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。\n[0200] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
法律信息
- 2018-12-28
专利权的转移
登记生效日: 2018.12.07
专利权人由北京猎豹网络科技有限公司变更为珠海豹好玩科技有限公司
地址由100041 北京市石景山区实兴大街30号院3号楼2层A-0070号变更为519000 广东省珠海市横琴新区宝华路6号105室-53967(集中办公区)
- 2017-04-26
- 2017-04-19
著录事项变更
申请人由北京金山网络科技有限公司变更为北京猎豹网络科技有限公司
地址由100041 北京市石景山区八大处高科技园区西井路3号3号楼1592A房间变更为100041 北京市石景山区实兴大街30号院3号楼2层A-0070号
- 2014-09-17
实质审查的生效
IPC(主分类): G06F 11/36
专利申请号: 201410208948.6
申请日: 2014.05.16
- 2014-08-20
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2014-05-07
|
2013-12-30
| | |
2
| |
2014-03-12
|
2013-12-16
| | |
3
| |
2013-12-04
|
2012-05-25
| | |
4
| |
2013-11-20
|
2013-07-16
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |