CN112612693A - 自动校验应用软件版本的方法、装置及存储介质 - Google Patents
自动校验应用软件版本的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112612693A CN112612693A CN202011460919.0A CN202011460919A CN112612693A CN 112612693 A CN112612693 A CN 112612693A CN 202011460919 A CN202011460919 A CN 202011460919A CN 112612693 A CN112612693 A CN 112612693A
- Authority
- CN
- China
- Prior art keywords
- version
- application
- dictionary data
- dictionary
- version number
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000012360 testing method Methods 0.000 claims abstract description 12
- 238000012795 verification Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/368—Test management for test version control, e.g. updating test cases to a new software version
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种自动校验应用软件版本的方法、装置及存储介质,其中方法包括:获取应用程序的版本,生成第一字典数据;遍历字典数据库,查找与第一字典数据中的应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典;生成可读的结果报告文本。本发明无需人为核查版本,减少人为核查的错误,减少了整体版本测试时间,同时提高了软件研发和测试的效率。
Description
技术领域
本发明涉及应用软件测试技术领域,特别涉及一种自动校验应用软件版本的方法、装置及存储介质。
背景技术
目前,软件工程师在对软件进行修改升级后,需要另外编译版本,软件的版本号才会升级,比如编译后从1.0版本升级到2.0版本。有时软件工程师在升级完软件后,会忘记编译版本号,所以版本号不会升级,还是原来的旧的版本号。软件工程师也不会主动检查版本号,导致测试工程师在测试软件时,会发生拿到的版本号与软件内显示的版本号不一致的情况。需要返回给软件工程师重新编译软件,生成正确的版本号才能开展测试工作。现有技术中没有应用软件的版本核对机制,需要人为核查,容易忘记执行。
发明内容
本发明的目的是提供一种自动校验应用软件版本的方法、装置及存储介质,可以解决现有技术中人为核查软件版本号容易忘记,导致实际版本与软件显示的版本不一致的问题。
本发明的目的是通过以下技术方案实现的:
第一方面,本发明提供一种自动校验应用软件版本的方法,包括以下步骤:
步骤1、获取应用程序的版本,生成第一字典数据;
步骤2、遍历字典数据库,查找与第一字典数据中的应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典;
步骤3、生成可读的结果报告文本。
进一步的,所述的步骤1包括:通过python语言编写测试工具,封装pm命令的pmlist packages获取系统所有已经安装的应用程序包名,然后通过pm命令的pm dump来获取应用程序的应用包名和版本号,再使用python编程语言处理成应用包名和版本互相映射的第一字典数据。
进一步的,所述的第一字典数据表示为{应用包名,应用程序中的版本号}。
进一步的,所述的字典数据库中保存了至少一条真实的字典数据,所述的真实的字典数据的表示为{应用包名,升级后的真实版本号}。
进一步的,所述的核查结果字典表示为{应用包名,升级后的真实版本号,应用程序中的版本号、对比结果}。
第二方面,本发明提供一种自动校验应用软件版本的装置,包括应用版本获取模块、自动对比核查模块和结果报告生成模块,其中:
应用版本获取模块,用于获取系统中所有应用程序的应用包名和版本号,生成至少一个应用包名和版本号对应的第一字典数据;
自动对比核查模块,将第一字典数据与字典数据库保存的字典数据进行比对,找到与第一字典数据中应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典;
结果报告生成模块,将所有核查结果字典生成可读的结果报告文本。
进一步的,所述的第一字典数据表示为{应用包名,应用程序中的版本号}。
进一步的,所述的字典数据库中保存了至少一条真实的字典数据,所述的真实的字典数据的表示为{应用包名,升级后的真实版本号}。
进一步的,所述的核查结果字典表示为{应用包名,升级后的真实版本号,应用程序中的版本号、对比结果}。
第三方面,本发明提供一种存储介质,所述的存储介质中存储有计算机程序,运行所述计算机程序,可以执行上述自动校验应用软件版本的方法。
本发明的自动校验应用软件版本的方法、装置及存储介质,无需人为核查版本,减少人为核查的错误,减少了整体版本测试时间,同时提高了软件研发和测试的效率。
附图说明
图1为本发明的自动校验应用软件版本的方法的步骤示意图;
图2为本发明的自动校验应用软件版本的装置的结构示意图。
具体实施方式
下面结合附图对本公开实施例进行详细描述。
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
本发明的自动校验应用软件版本的方法,包括以下步骤:
步骤1、应用版本获取模块获取所有应用程序的版本,生成第一字典数据。
具体的,在本申请的一种优选实施方式中,获取所有应用程序的版本包括:
通过python语言编写测试工具,封装pm命令的pm list packages获取系统所有已经安装的应用程序包名,然后通过pm命令的pm dump<某某应用的包名>来获取应用程序的应用包名和版本号,然后使用python编程语言处理成包名和版本互相映射的第一字典数据,传给自动对比核查模块进行核查。第一字典数据表示为{应用包名,应用程序中的版本号}。
步骤2、遍历字典数据库,查找与第一字典数据中应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典。
字典数据库保存了若干真实的字典数据,真实的字典数据中记录了应用程序升级后的真实版本号与包名,由软件开发工程师编辑并保存到字典数据库中。真实的字典数据的表示为{应用包名,升级后的真实版本号}。
核查结果字典表示为{应用包名,升级后的真实版本号,应用程序中的版本号、对比结果}。
步骤3、生成可读的结果报告文本。
将步骤2生成的所有核查结果字典格式化并打印成可读性的文本结果信息供给研发和测试人员查阅。
本发明的自动校验应用软件版本的装置,包括应用版本获取模块、自动对比核查模块和结果报告生成模块,其中:
应用版本获取模块,用于获取系统中所有应用程序的应用包名和版本号,生成若干个应用包名和版本号对应的第一字典数据。
自动对比核查模块,将第一字典数据与字典数据库保存的字典数据进行比对,找到与第一字典数据中应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典。
结果报告生成模块,将所有核查结果字典格式化并生成可读的结果报告文本。
进一步的,第一字典数据表示为{应用包名,应用程序中的版本号}。
进一步的,字典数据库保存的字典数据为软件工程师提前编辑好的真实的字典数据,其中的版本号为升级后的应用软件的真实版本号。
进一步的,真实的字典数据表示为{应用包名,升级后的真实版本号}。
进一步的,核查结果字典表示为{应用包名,升级后的真实版本号,应用程序中的版本号、对比结果}。
本发明还提供一种存储介质,该存储介质中存储有计算机程序,运行该计算机程序,可以执行以下方法:
步骤1、应用版本获取模块获取所有应用程序的版本,生成第一字典数据。
步骤2、遍历字典数据库,查找与第一字典数据中应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典。
步骤3、生成可读的结果报告文本。
进一步的,获取所有应用程序的版本包括:通过python语言编写测试工具,封装pm命令的pm list packages获取系统所有已经安装的应用程序包名,然后通过pm命令的pmdump<某某应用的包名>来获取应用程序的应用包名和版本号,然后使用python编程语言处理成包名和版本互相映射的第一字典数据,传给自动对比核查模块进行核查。第一字典数据表示为{应用包名,应用程序中的版本号}。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接或彼此可通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
以上仅为说明本发明的实施方式,并不用于限制本发明,对于本领域的技术人员来说,凡在本发明的精神和原则之内,不经过创造性劳动所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.自动校验应用软件版本的方法,其特征在于,包括以下步骤:
步骤1、获取应用程序的版本,生成第一字典数据;
步骤2、遍历字典数据库,查找与第一字典数据中的应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典;
步骤3、生成可读的结果报告文本。
2.根据权利要求1所述的自动校验应用软件版本的方法,其特征在于,所述的步骤1包括:通过python语言编写测试工具,封装pm命令的pm list packages获取系统所有已经安装的应用程序包名,然后通过pm命令的pm dump来获取应用程序的应用包名和版本号,再使用python编程语言处理成应用包名和版本互相映射的第一字典数据。
3.根据权利要求1所述的自动校验应用软件版本的方法,其特征在于,所述的第一字典数据表示为{应用包名,应用程序中的版本号}。
4.根据权利要求1所述的自动校验应用软件版本的方法,其特征在于,所述的字典数据库中保存了至少一条真实的字典数据,所述的真实的字典数据的表示为{应用包名,升级后的真实版本号}。
5.根据权利要求1所述的自动校验应用软件版本的方法,其特征在于,所述的核查结果字典表示为{应用包名,升级后的真实版本号,应用程序中的版本号、对比结果}。
6.自动校验应用软件版本的装置,其特征在于,包括应用版本获取模块、自动对比核查模块和结果报告生成模块,其中:
应用版本获取模块,用于获取系统中所有应用程序的应用包名和版本号,生成至少一个应用包名和版本号对应的第一字典数据;
自动对比核查模块,将第一字典数据与字典数据库保存的字典数据进行比对,找到与第一字典数据中应用包名相同的第二字典数据,比对第一字典数据中的版本号与第二字典数据中的版本号,输出核查结果字典;
结果报告生成模块,将所有核查结果字典生成可读的结果报告文本。
7.根据权利要求6所述的自动校验应用软件版本的装置,其特征在于,所述的第一字典数据表示为{应用包名,应用程序中的版本号}。
8.根据权利要求6所述的自动校验应用软件版本的装置,其特征在于,所述的字典数据库中保存了至少一条真实的字典数据,所述的真实的字典数据的表示为{应用包名,升级后的真实版本号}。
9.根据权利要求6所述的自动校验应用软件版本的装置,其特征在于,所述的核查结果字典表示为{应用包名,升级后的真实版本号,应用程序中的版本号、对比结果}。
10.一种存储介质,所述的存储介质中存储有计算机程序,其特征在于,运行所述计算机程序,可以执行权利要求1至5任一项所述的自动校验应用软件版本的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011460919.0A CN112612693A (zh) | 2020-12-11 | 2020-12-11 | 自动校验应用软件版本的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011460919.0A CN112612693A (zh) | 2020-12-11 | 2020-12-11 | 自动校验应用软件版本的方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112612693A true CN112612693A (zh) | 2021-04-06 |
Family
ID=75233501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011460919.0A Pending CN112612693A (zh) | 2020-12-11 | 2020-12-11 | 自动校验应用软件版本的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112612693A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113330419A (zh) * | 2021-06-28 | 2021-08-31 | 商汤国际私人有限公司 | 一种设备应用安装方法和装置 |
CN113448855A (zh) * | 2021-07-07 | 2021-09-28 | 中国工商银行股份有限公司 | 数据库版本包检测方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265572A (ja) * | 2000-03-22 | 2001-09-28 | Ntt Comware Corp | ソースプログラム管理装置、方法、及びそのプログラムを記録した記録媒体 |
CN1477500A (zh) * | 2002-08-19 | 2004-02-25 | 万达信息股份有限公司 | 一种Client/Server架构下软件自动升级更新的方法 |
CN101382914A (zh) * | 2008-10-15 | 2009-03-11 | 北大方正集团有限公司 | 软件更新文件的测试方法和装置 |
CN102929600A (zh) * | 2012-06-13 | 2013-02-13 | 许继集团有限公司 | 基于elf的监控系统版本识别方法 |
CN103412767A (zh) * | 2013-06-09 | 2013-11-27 | 百度国际科技(深圳)有限公司 | 一种应用版本的识别与升级方法以及系统 |
CN106445584A (zh) * | 2016-08-31 | 2017-02-22 | 福建联迪商用设备有限公司 | 软件模块的管理方法及系统 |
WO2017036211A1 (zh) * | 2015-09-01 | 2017-03-09 | 中兴通讯股份有限公司 | 数据库的结构比较方法和装置 |
CN106874196A (zh) * | 2017-01-19 | 2017-06-20 | 上海斐讯数据通信技术有限公司 | 一种自动化测试异常处理方法及自动化测试系统 |
US20180365033A1 (en) * | 2017-06-15 | 2018-12-20 | Microsoft Technology Licensing, Llc | Compatible dictionary layout |
-
2020
- 2020-12-11 CN CN202011460919.0A patent/CN112612693A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265572A (ja) * | 2000-03-22 | 2001-09-28 | Ntt Comware Corp | ソースプログラム管理装置、方法、及びそのプログラムを記録した記録媒体 |
CN1477500A (zh) * | 2002-08-19 | 2004-02-25 | 万达信息股份有限公司 | 一种Client/Server架构下软件自动升级更新的方法 |
CN101382914A (zh) * | 2008-10-15 | 2009-03-11 | 北大方正集团有限公司 | 软件更新文件的测试方法和装置 |
CN102929600A (zh) * | 2012-06-13 | 2013-02-13 | 许继集团有限公司 | 基于elf的监控系统版本识别方法 |
CN103412767A (zh) * | 2013-06-09 | 2013-11-27 | 百度国际科技(深圳)有限公司 | 一种应用版本的识别与升级方法以及系统 |
WO2017036211A1 (zh) * | 2015-09-01 | 2017-03-09 | 中兴通讯股份有限公司 | 数据库的结构比较方法和装置 |
CN106445584A (zh) * | 2016-08-31 | 2017-02-22 | 福建联迪商用设备有限公司 | 软件模块的管理方法及系统 |
CN106874196A (zh) * | 2017-01-19 | 2017-06-20 | 上海斐讯数据通信技术有限公司 | 一种自动化测试异常处理方法及自动化测试系统 |
US20180365033A1 (en) * | 2017-06-15 | 2018-12-20 | Microsoft Technology Licensing, Llc | Compatible dictionary layout |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113330419A (zh) * | 2021-06-28 | 2021-08-31 | 商汤国际私人有限公司 | 一种设备应用安装方法和装置 |
CN113448855A (zh) * | 2021-07-07 | 2021-09-28 | 中国工商银行股份有限公司 | 数据库版本包检测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mens et al. | Evolving software architecture descriptions of critical systems | |
CN109474488A (zh) | 接口测试方法、装置及计算机设备 | |
US8510717B2 (en) | Method and system for testing application modules using static tests from a test suite | |
CN106528100A (zh) | 用于安全关键软件开发的基于模型的技术和过程的系统和方法 | |
Sneed | Migrating from COBOL to Java | |
CN111399853A (zh) | 机器学习模型与自定义算子的模板化部署方法 | |
US20130239098A1 (en) | Source code conversion method and source code conversion program | |
ITTO980722A1 (it) | Procedimento per l'installazione e/o la verifica del software per un sistema di computer prodotto su ordinazione, e sistema di computer per | |
CN106909510A (zh) | 一种获取测试用例的方法以及服务器 | |
CN105117233A (zh) | Api调用方法及装置 | |
CN112612693A (zh) | 自动校验应用软件版本的方法、装置及存储介质 | |
CN101866315B (zh) | 软件开发工具的测试方法及系统 | |
WO2022134915A1 (zh) | 一种接口测试方法、计算机设备及计算机可读存储介质 | |
CN109063362B (zh) | 航电软件接口控制文件设计管理系统 | |
CN110222318A (zh) | 基于xml的数据生成工具开发方法 | |
CN107992306A (zh) | 一种航电软件接口实现一致性自动检查方法 | |
CN110264137A (zh) | 一种成本bom生成方法、计算机及存储介质 | |
CN103761095B (zh) | 一种生成通用的升级文件头部数据信息的方法 | |
CN114281342A (zh) | 一种代码自动生成方法 | |
CN110209389A (zh) | 一种基于xml的数据生成工具开发系统 | |
CN113591422B (zh) | 芯片验证中测试案例流程信息的生成系统及应用 | |
CN107797805A (zh) | 一种代码封装方法、装置及计算机可读存储介质 | |
US7325018B2 (en) | Design flow checker | |
US20200249916A1 (en) | Automated generation of software bindings | |
US20230072988A1 (en) | System and a method for automatic generation of smart contracts across blockchain platforms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Room 238, room 406, No.1, Yichuang street, Huangpu District, Guangzhou, Guangdong 510000 Applicant after: Guangzhou langguo Electronic Technology Co.,Ltd. Address before: Room 238, room 406, No.1, Yichuang street, Huangpu District, Guangzhou, Guangdong 510000 Applicant before: GUANGZHOU LANGO ELECTRONIC SCIENCE & TECHNOLOGY Co.,Ltd. |