CN103995774A - 软件安装包检测方法及装置 - Google Patents

软件安装包检测方法及装置 Download PDF

Info

Publication number
CN103995774A
CN103995774A CN201410208948.6A CN201410208948A CN103995774A CN 103995774 A CN103995774 A CN 103995774A CN 201410208948 A CN201410208948 A CN 201410208948A CN 103995774 A CN103995774 A CN 103995774A
Authority
CN
China
Prior art keywords
detected
installation kit
software installation
file
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410208948.6A
Other languages
English (en)
Other versions
CN103995774B (zh
Inventor
望帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Seal Fun Technology Co., Ltd.
Original Assignee
Beijing Kingsoft Internet Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Internet Science and Technology Co Ltd filed Critical Beijing Kingsoft Internet Science and Technology Co Ltd
Priority to CN201410208948.6A priority Critical patent/CN103995774B/zh
Publication of CN103995774A publication Critical patent/CN103995774A/zh
Application granted granted Critical
Publication of CN103995774B publication Critical patent/CN103995774B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明实施例公开了一种软件安装包检测方法及装置。该软件安装包检测方法包括:获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;依据所述获取的存储路径,获取所述待检测软件安装包;根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;输出所述获取的检测结果信息。通过利用本方案,可以达到提高检测效率,降低人工成本的目的。

Description

软件安装包检测方法及装置
技术领域
本发明涉及软件测试领域,特别涉及一种软件安装包检测方法及装置。
背景技术
所谓软件安装包,其为可自行解压缩文件的集合,其包括软件安装所需要的所有文件。其中,运行某个软件安装包,即将此软件安装包内的所有文件释放到硬盘上,完成修改注册表、修改系统设置、创建快捷方式等工作。实际应用中,为了确保软件安装包在被用户下载后能够正常安装并使用,对软件安装包进行发布前的测试是非常有必要的,例如,对软件安装包进行测试,可以确保首次安装、升级、完整的或自定义的安装都能进行。
现有技术中,当一个软件安装包测试通过,确认可发布时,通常还需要经过一系列的发布检查操作,例如,确定软件安装包与上一版本软件安装包或预设的标准软件安装包之间的差异信息,检查安装包内文件的数字签名、自签名是否符合标准等。具体的发布检查过程可以:在一个软件安装包进入发布流程后,一般都是通过人工方式分别检查软件安装包本身和软件安装包内文件的数字签名、自签名是否都符合标准,对比软件安装包内各个文件是否存在预期之外的增减情况等。
但是,上述检查操作所采用的人工方式无疑效率低,人工成本较高;而且,如上检查的检测标准也会随之快速迭代不断更新,标准更新后给人工检查无形中增加较多的成本。
发明内容
基于上述问题,本发明实施例公开了一种软件安装包检测方法及装置,以达到提高检测效率,降低人工成本的目的。技术方案如下:
第一方面,本发明实施例提供了一种软件安装包检测方法,包括:
获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
依据所述获取的存储路径,获取所述待检测软件安装包;
根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;
运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;
输出所述获取的检测结果信息。
可选的,所述待检测项目包括文件差异检测;
所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;
比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
可选的,所述获取与所述获取的待检测软件安装包内的文件对应的目标文件列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包中的文件的路径信息;
根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;
所述获取与参考软件安装包内的文件对应的参考文件列表,包括:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;
或者,
到预先设置的地址处下载所述参考文件列表。
可选的,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。
可选的,所述待检测项目包括数字签名检测;
所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;
对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。
可选的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表,包括:
到预先设置的地址处下载所述参考数字签名列表;
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标数字签名列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;
根据所述数字签名信息,生成所述目标数字签名列表。
可选的,所述待检测项目包括自签名检测;
所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;
对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
可选的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表,包括:
到预先设置的地址处下载所述参考自签名列表;
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标自签名列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;
根据所述自签名信息,生成所述目标自签名列表。
可选的,所述列表为xml格式;
所述预先设置的地址位于预先设置的svn目录下。
可选的,在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,还包括:
提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目,包括:
获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述输出所述获取的检测结果信息,包括:
在第二web交互界面上输出所述获取的检测结果信息。
第二方面,本发明实施例提供了一种软件安装包检测装置,包括:
信息获取模块,用于获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
安装包获取模块,用于依据所述获取的存储路径,获取所述待检测软件安装包;
程序调用模块,用于根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;
程序运行模块,用于运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;
检测结果输出模块,用于输出所述获取的检测结果信息。
可选的,所述待检测项目包括文件差异检测;
所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;
所述程序运行模块,具体用于运行所述用于文件差异检测的可调用程序模块来执行如下步骤:获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
可选的,所述程序运行模块用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包中的文件的路径信息;根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;
所述程序运行模块用于:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;或者,到预先设置的地址处下载所述参考文件列表。
可选的,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。
可选的,所述待检测项目包括数字签名检测;
所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;
所述程序运行模块,具体用于运行所述用于数字签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。
可选的,所述程序运行模块用于:
到预先设置的地址处下载所述参考数字签名列表;
所述程序运行模块用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;根据所述数字签名信息,生成所述目标数字签名列表。
可选的,所述待检测项目包括自签名检测;
所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;
所述程序运行模块,具体用于运行所述用于自签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
可选的,所述程序运行模块用于:
到预先设置的地址处下载所述参考自签名列表;
所述程序运行模块用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;根据所述自签名信息,生成所述目标自签名列表。
可选的,所述列表为xml格式;
所述预先设置的地址位于预先设置的svn目录下。
可选的,本发明实施例所提供的软件安装包检测装置还包括:
界面提供模块,用于在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述信息获取模块用于获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述检测结果输出模块用于在第二web交互界面上输出所述获取的检测结果信息。
与现有技术相比,本方案中,预先将软件安装包所对应的各个需要检测的项目的检测流程分别封装成可调用程序模块,即构建模块化的检查点,在软件安装包检测过程中,获取到待检测软件安装包和待检测项目后,调用所需的可调用程序模块,进而通过运行所调用的可调用程序模块即可获取待检测项目的检测结果信息,因此,可以达到提高检测效率,降低人工成本的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种软件安装包检测方法的流程图;
图2为本发明实施例所提供的一种软件安装包检测装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了达到提高检测效率,降低人工成本的目的,本发明实施例提供了一种软件安装包检测方法及装置。
下面首先对本发明实施例所提供的一种软件安装包检测方法进行介绍。
需要说明的是,本发明实施例所提供的软件安装包检测方法适用于电子设备中。其中,在实际应用中,该电子设备可以为笔记本电脑、台式电脑或服务器等,这都是合理的。
如图1所示,一种软件安装包检测方法,可以包括:
S101,获取待检测软件安装包的存储路径以及针对该待检测软件安装包的待检测项目;
S102,依据所述获取的存储路径,获取该待检测软件安装包;
在软件安装包的检测过程中,可以首先获取待检测软件安装包的存储路径以及针对该待检测软件安装包的待检测项目,以在获取到待检测软件安装包的存储路径后,可以依据所述获取的存储路径,获取所述待检测软件安装包,进而基于该待检测软件安装包执行后续的步骤。
通常情况下,软件开发人员在软件开发完成之后,会将软件安装包存储在一个固定的位置,测试人员在检测软件安装包时,首先需要确定软件安装包的存储路径以及需要检测的待检测项目。在本发明实施例中,在测试人员确定软件安装包的存储路径以及需要检测的待检测项目后,可通过人工的方式输入存储路径和待检测项目,可选的,在S101中,可通过接收测试人员输入的存储路径和待检测项目,来获取待检测安装包的存储路径和待检测项目。
其中,所获取的待检测软件安装包的存储路径为待检测软件安装包的本地存储路径,其中,通过该本地存储路径查找到该待检测的软件安装包。而在实际应用中,该待检测项目可以包括:文件差异检测、数字签名检测和自签名检测中的至少一种,当然并不局限于此。
本领域技术人员可以理解的是,文件差异是待检测安装包中的文件与参考软件安装包中的文件的差别,文件差异检测是指在软件安装包发布之前,为了确保安装包内的文件或文件夹正确性,对软件安装包内的文件或文件夹进行的一种检测;自签名为软件公司内部自用的一套文件签名校验机制,用于确保文件准确性,通常情况下,在软件安装包发布之前,为保证自签名信息的正确性,可以对自签名信息进行检测;而数字签名通常使用公钥加密领域的技术实现,用于鉴别数字信息的方法,其中,一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证,通常情况下,在软件安装包发布之前,可以对数字签名进行检测。
S103,根据所述获取的待检测项目,调用预先构建的与每个待检测项目对应的可调用程序模块;
S104,运行可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个待检测项目的检测结果信息;
需要强调的是,在本发明实施例中,预先将各个待检测项目的检测流程封装为可调用程序模块,当确定即获取待检测项目后,自动调用并运行相应的可调用程序模块,实现获取待测试软件包的待检测项目的检测结果信息,因此,不需要人工进行这些项目的检测,使得检测可以自动进行,降低了人工成本也提高了检测效率。而且,在需要增加新的检测项目时,可以方便的增加新的可调用模块即可,方便检测的更新和修改。
本发明实施例中,在获取到待检测项目后,可以基于所述获取的待检测项目,调用预先构建的与每个待检测项目对应的可调用程序模块。而在调用预先构建的与每个待检测项目对应的可调用程序模块后,可以运行可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个待检测项目的检测结果信息。
需要强调的是,不同待检测项目对应不同的可调用程序模块,即:待检测项目与可调用程序模块具有唯一对应性。例如:作为一种待检测项目的文件差异检测可以对应有用于文件差异检测的可调用程序模块;作为一种待检测项目的数字签名检测可以对应有用于数字签名检测的可调用程序模块;作为一种待检测项目的自签名检测可以对应有用于自签名检测的可调用程序模块。
其中,不同的待检测项目所对应的检测结果信息不同。例如,当待检测项目包括文件差异检测时,检测结果信息为文件差异信息,而文件差异信息具体可以包括:文件增减情况、文件夹增减情况、文件路径异常中的一种或多种;当待检测项目包括数字签名检测时,检测结果信息为表明数字签名正确与否的信息;当待检测项目为自签名检测时,检测结果信息可以为表明自签名正确与否的信息。
S105,输出获取的检测结果信息。
在获取到每个待检测项目的检测结果信息后,可以输出所获取的检测结果信息,以使得测试人员了解检测结果信息。
与现有技术相比,本方案中,预先将软件安装包所对应的各个需要检测的项目的检测流程分别封装成可调用程序模块,即构建模块化的检查点,在软件安装包检测过程中,获取到待检测软件安装包和待检测项目后,调用所需的可调用程序模块,进而通过运行所调用的可调用程序模块即可获取待检测项目的检测结果信息,因此,可以达到提高检测效率,降低人工成本的目的。
更进一步的,在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,还可以包括:
提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目,可以包括:
获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述输出所述获取的检测结果信息,可以包括:
在第二web交互界面上输出所述获取的检测结果信息。
可见,通过web交互界面的展示,使得整个检测流程web化,从而进一步提高用户的使用体验。
需要说明的是,上述的“第一web交互界面”中的“第一”以及“第二web交互界面”中的“第二”仅仅为了区分不同的交互界面,并不具有任何限定作用。并且,上述所给出的待检测软件安装包的存储路径输入入口和针对待检测软件安装包的待检测项目输入入口的具体提供形式并不局限于web交互界面。同样的,上述所给出的输出检测结果信息的具体输出形式并不局限于web交互界面。
由于不同的待检测项目的具体检测流程不同,下面将基于不同的待检测项目,介绍运行可调用程序模块对待检测软件安装包进行检测的具体过程。
(1)当所述待检测项目包括文件差异检测时,所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;
相应的,所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测可以包括:
获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;
比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
需要说明的是,为了更清楚地体现待检测安装包与参考软件安装包之间的差异信息,可以将获取的待检测安装包与参考软件安装包之间的差异信息按照差异类型进行分类,例如,可以分为多余文件、缺少文件、多余文件夹、缺少文件夹、文件路径异常等,并将分类后的差异文件信息暂存于不同的list(列表)中。
具体的,所述获取与所述获取的待检测软件安装包内的文件对应的目标文件列表可以包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包中的文件的路径信息;
根据所述路径信息,生成该待检测软件安装包内的文件对应的目标文件列表;
具体的,所述获取与参考软件安装包内的文件对应的参考文件列表可以包括:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表。
可以理解的是,可以将生成的参考文件列表上传到某指定位置,以便于列表共享,使得其他使用者可以直接到该指定位置下载该列表。作为一种可选方式,在本发明实施例中,可以预先形成参考文件列表,并将预先形成的参考文件列表放置在预先设置的地址处,在运行用于文件差异检测的可调用程序模块时,到预先设置的地址处下载所述参考文件列表。举例而言,可以结合现有的svn目录,预先将参考文件列表放置在svn目录中,即参考文件列表所在的预先设置的地址位于预先设置的svn目录下,以便于列表共享。其中,svn为suv(subversion)版本管理软件的目录。
需要说明的是,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。并且,在实际应用中,上述的参考文件列表和目标文件列表均可以为xml格式。
(2)当所述待检测项目包括数字签名检测时,所述调用的可调用程序模块可以包括:用于数字签名检测的可调用程序模块;
所述运行所述可调用程序模块对所获取的待检测软件安装包进行检测可以包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;
对比所述参考数字签名列表和目标数字签名列表,以确定目标数字签名列表中的数字签名是否正确。
具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表,可以包括:
到预先设置的地址处下载所述参考数字签名列表;
需要说明的是,在本发明实施例中,可以通过人工的方式预先将与待检测软件安装包内的文件对应的参考数字签名列表放置在预设的地址处,在运行用于数字签名检测的可调用程序模块时,用于数字签名检测的可调用程序模块到预设的地址处下载该参考数字签名列表。举例而言,可以结合现有的svn目录,预先将参考数字签名列表放置在svn目录中,即参考数字签名列表所在的预先设置的地址位于预先设置的svn目录下,以便于列表共享。其中,svn为suv(subversion)版本管理软件的目录。
具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标数字签名列表,可以包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;
根据所述数字签名信息,生成所述目标数字签名列表。
其中,在实际应用中,参考数字签名列表和目标数字签名列表均可以为xml格式。
(3)当所述待检测项目包括自签名检测时,所述调用的可调用程序模块可以包括:用于自签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,可以包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;
对比参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表,可以包括:
到预先设置的地址处下载所述参考自签名列表;
需要说明的是,在本发明实施例中,可以通过人工的方式预先将与待检测软件安装包内的文件对应的参考自签名列表放置在预设的地址处,在运行用于自签名检测的可调用程序模块时,用于自签名检测的可调用程序模块到预设的地址处下载该参考自签名列表。举例而言,可以结合现有的svn目录,预先将参考自签名列表放置在svn目录中,即参考自签名列表所在的预先设置的地址位于预先设置的svn目录下,以便于列表共享。其中,svn为suv(subversion)版本管理软件的目录。
具体的,所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标自签名列表可以包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;
根据所述自签名信息,生成所述目标自签名列表。
其中,在实际应用中,参考自签名列表和目标自签名列表均可以为xml格式。
需要强调的是,待检测项目包括文件差异检测、数字签名检测和自签名检测中的至少两种时,每一种待检测项目所对应的运行可调用程序模块对待检测软件安装包进行检测的具体过程可以参照上述给出的相应检测过程,在此不作赘述。
相应于上述方法实施例,本发明实施例还提供了一种软件安装包检测装置,如图2所示,可以包括:
信息获取模块210,用于获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
安装包获取模块220,用于依据所述获取的存储路径,获取所述待检测软件安装包;
程序调用模块230,用于根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;
程序运行模块240,用于运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;
检测结果输出模块250,用于输出所述获取的检测结果信息。
与现有技术相比,本方案中,预先将软件安装包所对应的各个需要检测的项目的检测流程分别封装成可调用程序模块,即构建模块化的检查点,在软件安装包检测过程中,获取到待检测软件安装包和待检测项目后,调用所需的可调用程序模块,进而通过运行所调用的可调用程序模块即可获取待检测项目的检测结果信息,因此,可以达到提高检测效率,降低人工成本的目的。
其中,所述待检测项目可以包括文件差异检测;
所述调用的可调用程序模块可以包括:用于文件差异检测的可调用程序模块;
所述程序运行模块240,具体用于运行所述用于文件差异检测的可调用程序模块来执行如下步骤:获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
具体的,所述程序运行模块240用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包中的文件的路径信息;根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;
所述程序运行模块240用于:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;或者,到预先设置的地址处下载所述参考文件列表。
具体的,所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。
具体的,所述参考文件列表和所述目标文件列表均可以为xml格式;并且,所述参考文件列表所在的预先设置的地址可以位于预先设置的svn目录下。
其中,所述待检测项目可以包括数字签名检测;
所述调用的可调用程序模块可以包括:用于数字签名检测的可调用程序模块;
所述程序运行模块240,具体用于运行所述用于数字签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。
具体的,所述程序运行模块240用于:
到预先设置的地址处下载所述参考数字签名列表;
所述程序运行模块240用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;根据所述数字签名信息,生成所述目标数字签名列表。
其中,所述参考数字签名列表和所述目标数字签名列表均可以为xml格式;并且,所述参考数字签名列表所在的预先设置的地址可以位于预先设置的svn目录下。
其中,所述待检测项目可以包括自签名检测;
所述调用的可调用程序模块可以包括:用于自签名检测的可调用程序模块;
所述程序运行模块240,具体用于运行所述用于自签名检测的可调用程序模块来执行如下步骤:获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
具体的,所述程序运行模块240运行所述用于自签名检测的可调用程序模块获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表包括:
到预先设置的地址处下载所述参考自签名列表;
所述程序运行模块240用于:
解压所述获取的待检测软件安装包;获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;根据所述自签名信息,生成所述目标自签名列表。
其中,所述参考自签名列表和所述目标自签名列表均可以为xml格式;并且,所述参考自签名列表所在的预先设置的地址可以位于预先设置的svn目录下。
更进一步的,本发明实施例所提供的软件安装包检测装置还可以包括:
界面提供模块,用于在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述信息获取模块210用于获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述检测结果输出模块250用于在第二web交互界面上输出所述获取的检测结果信息。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (20)

1.一种软件安装包检测方法,其特征在于,包括:
获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
依据所述获取的存储路径,获取所述待检测软件安装包;
根据所述获取的待检测项目,调用预先构建的与每个所述待检测项目对应的可调用程序模块;
运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,从而获取每个所述待检测项目的检测结果信息;
输出所述获取的检测结果信息。
2.根据权利要求1所述的方法,其特征在于,
所述待检测项目包括文件差异检测;
所述调用的可调用程序模块包括:用于文件差异检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述获取的待检测软件安装包内的文件对应的目标文件列表和与参考软件安装包内的文件对应的参考文件列表;
比较所述目标文件列表和所述参考文件列表,获取所述待检测软件安装包和所述参考软件安装包之间的文件差异信息。
3.根据权利要求2所述的方法,其特征在于,
所述获取与所述获取的待检测软件安装包内的文件对应的目标文件列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包中的文件的路径信息;
根据所述路径信息,生成所述待检测软件安装包内的文件对应的目标文件列表;
所述获取与参考软件安装包内的文件对应的参考文件列表,包括:
获取参考软件安装包;解压所述获取的参考软件安装包;获取所述解压后的参考软件安装包的文件的路径信息;根据所述路径信息,生成所述参考软件安装包内的文件对应的参考文件列表;
或者,
到预先设置的地址处下载所述参考文件列表。
4.根据权利要求3所述的方法,其特征在于,
所述参考软件安装包为所述待检测软件安装包所对应的上一版本的软件安装包,或者,所述待检测软件安装包所对应的预设的标准软件安装包。
5.根据权利要求1所述的方法,其特征在于,
所述待检测项目包括数字签名检测;
所述调用的可调用程序模块包括:用于数字签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表和目标数字签名列表;
对比所述参考数字签名列表和目标数字签名列表,以确定所述目标数字签名列表中的数字签名是否正确。
6.根据权利要求5所述的方法,其特征在于,
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考数字签名列表,包括:
到预先设置的地址处下载所述参考数字签名列表;
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标数字签名列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的数字签名信息;
根据所述数字签名信息,生成所述目标数字签名列表。
7.根据权利要求1所述的方法,其特征在于,
所述待检测项目包括自签名检测;
所述调用的可调用程序模块包括:用于自签名检测的可调用程序模块;
所述运行所述可调用程序模块对所述获取的待检测软件安装包进行检测,包括:
获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表和目标自签名列表;
对比所述参考自签名列表和目标自签名列表,以确定所述目标自签名列表中的自签名是否正确。
8.根据权利要求7所述的方法,其特征在于,
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的参考自签名列表,包括:
到预先设置的地址处下载所述参考自签名列表;
所述获取与所述待检测软件安装包以及所述待检测软件安装包内的文件对应的目标自签名列表,包括:
解压所述获取的待检测软件安装包;
获取所述解压后的待检测软件安装包以及所述安装包中的文件的自签名信息;
根据所述自签名信息,生成所述目标自签名列表。
9.根据权利要求3、6、8任意一项所述的方法,其特征在于,
所述列表为xml格式;
所述预先设置的地址位于预先设置的svn目录下。
10.根据权利要求1至9中任一项所述的方法,其特征在于,在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,还包括:
提供第一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至19中任一项所述的装置,其特征在于,还包括:
界面提供模块,用于在所述获取待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目之前,提供第一web交互界面,所述第一web交互界面上具有待检测软件安装包的存储路径输入入口和针对所述待检测软件安装包的待检测项目输入入口;
所述信息获取模块用于:
获取通过所述第一web交互界面输入的待检测软件安装包的存储路径以及针对所述待检测软件安装包的待检测项目;
所述检测结果输出模块用于:
在第二web交互界面上输出所述获取的检测结果信息。
CN201410208948.6A 2014-05-16 2014-05-16 软件安装包检测方法及装置 Active CN103995774B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410208948.6A CN103995774B (zh) 2014-05-16 2014-05-16 软件安装包检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410208948.6A CN103995774B (zh) 2014-05-16 2014-05-16 软件安装包检测方法及装置

Publications (2)

Publication Number Publication Date
CN103995774A true CN103995774A (zh) 2014-08-20
CN103995774B CN103995774B (zh) 2017-04-26

Family

ID=51309946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410208948.6A Active CN103995774B (zh) 2014-05-16 2014-05-16 软件安装包检测方法及装置

Country Status (1)

Country Link
CN (1) CN103995774B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317704A (zh) * 2014-09-30 2015-01-28 中国电子科技集团公司第四十一研究所 一种生产线自动测试系统的测量软件集成方法
CN105205152A (zh) * 2015-09-23 2015-12-30 北京金山安全软件有限公司 判定路径与包名对应关系的方法、装置及电子设备
CN106445807A (zh) * 2016-08-29 2017-02-22 Tcl集团股份有限公司 用于智能终端的应用安装包检测方法及装置
CN107992742A (zh) * 2017-10-27 2018-05-04 维沃移动通信有限公司 一种安装包识别的方法和装置
CN109886015A (zh) * 2019-02-27 2019-06-14 广州华多网络科技有限公司 应用程序的安装包的检测方法及装置
CN110297776A (zh) * 2019-07-03 2019-10-01 深圳市腾讯网域计算机网络有限公司 检测报告生成、接收方法、装置、设备及存储介质
CN110678819A (zh) * 2017-05-25 2020-01-10 Ls产电株式会社 控制程序运行方法
CN113779620A (zh) * 2021-08-19 2021-12-10 成都鲁易科技有限公司 程序文件的校验方法、装置、存储介质及计算机设备
CN114707123A (zh) * 2022-04-22 2022-07-05 北京时代亿信科技股份有限公司 软件安装包的验证方法及装置、非易失性存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130198568A1 (en) * 2012-01-31 2013-08-01 Bank Of America Corporation System And Method For Test Case Generation Using Action Keywords
CN103399814A (zh) * 2013-07-16 2013-11-20 西安Tcl软件开发有限公司 自动化测试的方法及装置
CN103425574A (zh) * 2012-05-25 2013-12-04 腾讯科技(深圳)有限公司 一种测试应用程序的方法及装置
CN103632089A (zh) * 2013-12-16 2014-03-12 北京网秦天下科技有限公司 应用安装包的安全检测方法、装置和系统
CN103778367A (zh) * 2013-12-30 2014-05-07 网秦(北京)科技有限公司 基于应用证书来检测应用安装包的安全性的方法、终端以及辅助服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130198568A1 (en) * 2012-01-31 2013-08-01 Bank Of America Corporation System And Method For Test Case Generation Using Action Keywords
CN103425574A (zh) * 2012-05-25 2013-12-04 腾讯科技(深圳)有限公司 一种测试应用程序的方法及装置
CN103399814A (zh) * 2013-07-16 2013-11-20 西安Tcl软件开发有限公司 自动化测试的方法及装置
CN103632089A (zh) * 2013-12-16 2014-03-12 北京网秦天下科技有限公司 应用安装包的安全检测方法、装置和系统
CN103778367A (zh) * 2013-12-30 2014-05-07 网秦(北京)科技有限公司 基于应用证书来检测应用安装包的安全性的方法、终端以及辅助服务器

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317704A (zh) * 2014-09-30 2015-01-28 中国电子科技集团公司第四十一研究所 一种生产线自动测试系统的测量软件集成方法
CN105205152A (zh) * 2015-09-23 2015-12-30 北京金山安全软件有限公司 判定路径与包名对应关系的方法、装置及电子设备
CN105205152B (zh) * 2015-09-23 2019-04-02 北京金山安全软件有限公司 判定路径与包名对应关系的方法、装置及电子设备
CN106445807A (zh) * 2016-08-29 2017-02-22 Tcl集团股份有限公司 用于智能终端的应用安装包检测方法及装置
CN106445807B (zh) * 2016-08-29 2020-11-10 Tcl科技集团股份有限公司 用于智能终端的应用安装包检测方法及装置
CN110678819B (zh) * 2017-05-25 2023-03-28 Ls产电株式会社 控制程序运行方法
CN110678819A (zh) * 2017-05-25 2020-01-10 Ls产电株式会社 控制程序运行方法
CN107992742A (zh) * 2017-10-27 2018-05-04 维沃移动通信有限公司 一种安装包识别的方法和装置
CN109886015A (zh) * 2019-02-27 2019-06-14 广州华多网络科技有限公司 应用程序的安装包的检测方法及装置
CN110297776A (zh) * 2019-07-03 2019-10-01 深圳市腾讯网域计算机网络有限公司 检测报告生成、接收方法、装置、设备及存储介质
CN110297776B (zh) * 2019-07-03 2023-10-20 深圳市腾讯网域计算机网络有限公司 检测报告生成、接收方法、装置、设备及存储介质
CN113779620A (zh) * 2021-08-19 2021-12-10 成都鲁易科技有限公司 程序文件的校验方法、装置、存储介质及计算机设备
CN114707123A (zh) * 2022-04-22 2022-07-05 北京时代亿信科技股份有限公司 软件安装包的验证方法及装置、非易失性存储介质

Also Published As

Publication number Publication date
CN103995774B (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
CN103995774A (zh) 软件安装包检测方法及装置
US8935573B2 (en) Reliable unit testing through cached mocking
CN103970559B (zh) 一种基于Android系统的设备加载方法及装置
US8875104B2 (en) Efficiently developing software using test cases to check the conformity of the software to the requirements
CN108829593A (zh) 代码覆盖率计算分析方法、装置、设备及存储介质
CN107896244B (zh) 一种版本文件的分发方法、客户端及服务器
CN104932973A (zh) 一种版本兼容测试方法和装置
AU2016250350A1 (en) Orchestrating and providing a regression test
CN109376087A (zh) 一种软件测试方法、装置及电子设备
CN109902005A (zh) 一种自动化测试的方法和系统
CN106095415A (zh) 开发文件打包方法、装置及系统
CN103955429B (zh) 确定回归测试范围的方法及装置
CN109117143A (zh) 一种应用部署方法及系统
CN113254033A (zh) 一种母盘文件生成方法、装置、电子设备及存储介质
CN107153540A (zh) 增量构建方法及装置
CN103425580A (zh) 一种自动快速获取和校验云计算设备配置信息的方法
CN108958890A (zh) 容器镜像检测方法、装置及电子设备
CN105162664A (zh) 一种基于仪表中间层开发的自动化平台测试方法及系统
CN103942131A (zh) 监控底层接口是否变化的方法及装置
CN103902445B (zh) 一种回归测试对象确定方法及装置
CN110990833B (zh) 一种sdk安全检测方法及相关设备
CN110889116A (zh) 一种广告拦截方法、装置及电子设备
CN105653325A (zh) 一种测试环境中数据包的更新方法、装置及电子设备
CN104239112A (zh) 一种设备驱动程序安装方法及装置
US11347533B2 (en) Enhanced virtual machine image management system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100041 Beijing, Shijingshan District Xing Xing street, building 30, No. 3, building 2, A-0070

Applicant after: BEIJING LIEBAO NETWORK TECHNOLOGY CO., LTD.

Address before: 100041 room 1592A, building, No. 3 West Road, Badachu hi tech park, Beijing, Shijingshan District, China

Applicant before: Beijing Kingsoft Internet Science and Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20181207

Address after: Room 105-53967, No. 6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province

Patentee after: Zhuhai Seal Fun Technology Co., Ltd.

Address before: 100041 A-0070 2, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: BEIJING LIEBAO NETWORK TECHNOLOGY CO., LTD.