CN108628743A - 应用程序测试方法、装置、设备及存储介质 - Google Patents
应用程序测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN108628743A CN108628743A CN201810385438.4A CN201810385438A CN108628743A CN 108628743 A CN108628743 A CN 108628743A CN 201810385438 A CN201810385438 A CN 201810385438A CN 108628743 A CN108628743 A CN 108628743A
- Authority
- CN
- China
- Prior art keywords
- data
- application
- configuration file
- test
- program
- 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
Links
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/3684—Test management for test design, e.g. generating new test cases
-
- 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/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- 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/362—Software debugging
- G06F11/3644—Software debugging by instrumenting at runtime
-
- 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/3688—Test management for test execution, e.g. scheduling of test suites
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)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种应用程序测试方法、装置、设备及存储介质。该方法包括:应用测试终端确定与目标应用程序对应的预设输入数据;所述应用测试终端依据所述预设输入数据及预设配置文件数据,对所述目标应用程序进行测试,其中,所述预设配置文件数据由应用执行终端依据所述预设输入数据执行所述目标应用程序时调用预设的配置文件生成程序生成。通过上述技术方案,实现了更加便捷地在应用测试终端,对运行于应用执行终端中的目标应用程序进行程序测试,使得应用测试终端直接通过预设配置文件数据获取所需数据,减少了应用测试终端在测试过程中与其他终端的交互过程,缩短了程序测试流程,提高了程序测试的效率。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种应用程序测试方法、装置、设备及存储介质。
背景技术
为了提高诸如智能手机和平板电脑等移动终端的性能,一些移动终端设备厂商提供了移动终端专用的CPU芯片及相应的指令集,例如ARM芯片和ARM架构处理器扩展结构(NEON)指令集,开发人员可以基于NEON指令集来实现移动终端中的不同功能,比如视频编解码功能或用户身份验证功能等。
虽然基于移动终端专用的CPU芯片和相应的指令集进行程序开发,能够提高移动终端的运行性能及信息安全性。但是,由于指令的差异,基于NEON指令集开发的移动终端的应用程序,只能在移动终端上运行,无法在诸如台式电脑或服务器等非移动终端上运行。这样就只能对该应用程序进行功能可否实现的简单功能测试,而无法借助PC终端或服务器等非移动终端的功能测试工具或者开发人员自行编写的功能测试脚本,对该应用程序进行完整的程序测试,比如功能测试、安全测试、性能测试以及兼容性测试等,使得对应用程序的完整测试变得极为不便。
发明内容
本发明实施例提供一种应用程序测试方法、装置、设备及存储介质,以实现便捷且高效地对应用程序进行程序测试。
第一方面,本发明实施例提供了一种应用程序测试方法,包括:
应用测试终端确定与目标应用程序对应的预设输入数据;
所述应用测试终端依据所述预设输入数据及预设配置文件数据,对所述目标应用程序进行测试,其中,所述预设配置文件数据由应用执行终端依据所述预设输入数据执行所述目标应用程序时调用预设的配置文件生成程序生成。
第二方面,本发明实施例还提供了一种应用程序测试装置,该装置包括:
预设输入数据确定模块,用于确定与目标应用程序对应的预设输入数据;
测试模块,用于依据所述预设输入数据及预设配置文件数据,对所述目标应用程序进行测试,其中,所述预设配置文件数据由应用执行终端依据所述预设输入数据执行所述目标应用程序时调用预设的配置文件生成程序生成。
第三方面,本发明实施例还提供了一种设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的应用程序测试方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的应用程序测试方法。
本发明实施例通过应用测试终端确定与目标应用程序对应的预设输入数据,以及由应用执行终端在执行目标应用程序时生成的预设配置文件数据,并依据预设输入数据及预设配置文件数据对目标应用程序进行测试,实现了更加便捷地在应用测试终端,对运行于应用执行终端中的目标应用程序进行程序测试,使得应用测试终端直接通过预设配置文件数据获取所需数据,减少了应用测试终端在测试过程中与其他终端的交互过程,缩短了程序测试流程,提高了程序测试的效率。
附图说明
图1是本发明实施例一中的一种应用程序测试方法的流程图;
图2是本发明实施例二中的一种应用程序测试方法的流程图;
图3是本发明实施例三中的一种应用程序测试装置的结构示意图;
图4是本发明实施例四中的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
本实施例提供的应用程序测试方法可适用于在应用测试终端,对应用执行终端中的目标应用程序进行完整的程序测试,且该目标应用程序中的输入数据和对应的输出数据可以预先固定,即输入数据预先确定时,对应的输出数据也就相应确定的情况。该方法可以由应用程序测试装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在具备完整的应用程序测试的设备中,例如典型的是非移动终端设备,例如台式电脑或服务器等。参见图1,本实施的方法具体包括如下步骤:
S110、应用测试终端确定与目标应用程序对应的预设输入数据。
其中,应用测试终端是指用于进行应用程序测试的终端,例如可以是台式电脑(即PC终端)或服务器等。目标应用程序是指待测试的应用程序,例如可以是直播应用、购物应用及办公应用等。
预设输入数据是指预先设置的输入数据,其可以是用户输入的数据,也可以是服务器下发的数据,还可以是应用测试终端内置的数据,例如可以是用户名及登录密码等用户身份验证信息,也可以是待执行打开或加密等操作的文件数据,也可以是用于加密信息的随机数,还可以是待解码的视频数据等。这里,预设输入数据是为了进行应用程序测试而设置的测试用数据,故可以预先确定数据量及具体的数据内容,只要其可以实现对应用程序的程序测试即可。
具体地,将目标应用程序设置于应用测试终端中,用于进行程序测试。应用测试终端则根据预设输入数据的输入来源,接收或获取对该目标应用程序进行数据输入的预设输入数据。例如,可以是应用测试终端接收用户输入的预设输入数据;也可以是应用测试终端向服务器发送数据获取请求,并接收服务器对数据获取请求进行响应而下发的响应数据作为预设输入数据;还可以是应用测试终端根据预设输入数据在其内部的预置路径,进行预设输入数据的查找与获取。
S120、应用测试终端依据预设输入数据及预设配置文件数据,对目标应用程序进行测试。
其中,预设配置文件数据是指预先获取到的配置文件数据,其用于确定程序测试中除了预设输入数据之外的其他测试用数据,例如可以是预设输入数据对应的程序运行中间结果数据和/或最终的输出数据(总称为关联输出数据)等,或者是与预设输入数据配合使用的、诸如历史测试数据等其他测试用数据,其存储形式可以是数据表的形式,也可以是单纯数据的形式,还可以是数据表与数据组合的组合形式。
示例性地,预设配置文件数据由应用执行终端依据预设输入数据执行目标应用程序时调用预设的配置文件生成程序生成。其中,应用执行终端是指目标应用程序开发时设定的应用运行终端,例如可以是智能手机或平板电脑等移动终端。预设的配置文件生成程序是指预先在应用执行终端设置的,用于生成配置文件的程序,其可以是进行数据收集,并将收集的数据生成配置文件的程序,也可以是与预设配置文件数据中的数据相对应的数据处理程序,例如数据输入接口及身份验证程序。具体地,应用执行终端在执行目标应用程序的过程中,将预设输入数据、关联输出数据及数据之间的关联关系中的至少一个数据,通过预设的配置文件生成程序的数据输入接口,传递至预设的配置文件生成程序,并由该程序生成预设配置文件数据。这样设置的好处在于,通过预设的配置文件生成程序,由应用执行终端事先将应用测试终端需要用到的测试数据生成单独的配置文件数据,能够避免通过其他渠道构建配置文件数据而造成的配置文件数据错误的情况发生,保证了配置文件数据的真实性与可靠性,进而提高程序测试的准确性。
具体地,应用测试终端根据预设输入数据及预设配置文件数据,确定目标应用程序测试所需的测试数据,并利用该测试数据,对目标应用程序进行程序测试,比如功能可否实现的功能测试,程序运行是否稳定的边界条件测试和压力测试等性能测试,程序是否存在安全漏洞等的安全测试及程序兼容性测试等。
本实施例的技术方案,通过应用测试终端确定与目标应用程序对应的预设输入数据,以及由应用执行终端在执行目标应用程序时生成的预设配置文件数据,并依据预设输入数据及预设配置文件数据对目标应用程序进行测试,实现了更加便捷地在应用测试终端,对运行于应用执行终端中的目标应用程序进行程序测试,使得应用测试终端直接通过预设配置文件数据获取所需数据,减少了应用测试终端在测试过程中与其他终端的交互过程,缩短了程序测试流程,提高了程序测试的效率。
示例性地,在上述技术方案的基础上,目标应用程序中包含待模拟功能,待模拟功能基于NEON指令集实现。
其中,待模拟功能是指应用测试终端执行目标应用程序时,需要模拟的目标应用程序中的功能,例如可以是身份验证功能、数据加解密功能或视频编解码功能等。NEON指令集是指ARM架构处理器扩展结构指令集。
具体地,目标应用程序所能实现的诸多功能中包含待模拟功能,该待模拟功能是基于移动终端专有芯片和专有指令集,即NEON指令集实现的,也就是说,该目标应用程序中的待模拟功能在进行程序开发时,所依赖的指令集为NEON指令集。这样,采用移动终端专有指令集进行功能开发,不仅能够提高移动终端中相应功能的运行速度,而且使得该功能仅可运行于移动终端,从而避免黑客在非移动终端对该待模拟功能进行模拟,以实施一些非法行为,比如刷单行为或伪造直播主播的虚假人气行为等,能够对移动终端应用起到一定的保护作用。
但是,正是由于基于NEON指令集实现的功能无法在非移动终端执行,故非移动终端无法对包含待模拟功能在内的应用程序直接进行程序测试。所以,本发明实施例中采用预设输入数据和预设配置文件数据的形式,达到在应用测试终端对目标应用程序中待模拟功能的模拟,使得目标应用程序能够运行于应用测试终端,进而使得应用测试终端能够对目标应用程序进行程序测试。本发明实施例中的应用程序测试方法尤其适用于目标应用程序只能在应用执行终端中运行,而无法在应用测试终端中运行时,对目标应用程序进行程序测试的情况。
示例性地,在上述技术方案的基础上,预设配置文件数据包括与预设输入数据对应的关联输出数据;相应地,应用测试终端依据预设输入数据及预设配置文件数据,对目标应用程序进行测试包括:依据预设输入数据及关联输出数据的数据类型,创建关联容器;将预设配置文件数据***关联容器,生成输入数据与输出数据之间的映射关系表;依据预设输入数据及映射关系表,确定待模拟功能的目标输出数据,并依据目标输出数据,对目标应用程序进行测试。
其中,关联容器,也称为关联式容器,是指按照数据之间的关联关系存储数据的对象,其中的元素是按关键字来保存和访问的,可以支持高效的关键字查找和访问,具体可以包含map、multimap、set及multiset等,可以依据具体的数据应用情况,选择相应的关联容器。示例性地,关联容器包括map关联容器。由于本发明实施例中的预设输入数据只设置了一组测试用数据,故可以采用map关联容器,来构建一对一的映射关系表。这样可以使得映射关系表以键值对的形式存储,并且能够以关键词为索引词,实现数据的快速查找。目标输出数据是指待模拟功能对输入数据进行处理后的输出数据。
具体地,为了在应用测试终端进行程序测试,需要先对待模拟功能进行模拟实现,再对整个程序进行测试。本发明实施例中是根据预设输入数据和预设配置文件数据,确定待模拟功能的目标输出数据,以屏蔽待模拟功能代码的形式,实现对其模拟。具体实施时,为了能够根据预设输入数据快速查找到对应的输出数据,本实施例中建立了一个输入数据和输出数据之间的映射关系表。为了进一步提高数据查找速度,本实施例中创建了一个map关联容器,即根据预设输入数据和关联输出数据的数据类型,确定map关联容器中关键字和值的类型,并创建一个map容器。关联容器创建之后,则根据预设配置文件数据中的预设输入数据和关联输出数据之间的对应关系,将每个预设输入数据和对应的关联输出数据,分别以关键字和值的形式,逐对***map关联容器中,生成输入数据和输出数据之间的映射关系表。之后,可以以预设输入数据为关键字,进行待模拟功能的目标输出数据的查找及确定。再以该目标输出数据为目标应用程序中后续程序运行的输入数据,实现对目标应用程序的测试。这样设置的好处在于,能够快速地进行目标输出数据的确定,进一步提高应用测试终端进行程序测试的速度。
实施例二
本实施例在上述实施例一的基础上,以待模拟功能为身份验证功能为例,对应用程序测试方法进行详细说明。在此基础上,还可以进一步对“应用测试终端确定与目标应用程序对应的预设输入数据”进行优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
在对本实施例中的应用程序测试方法进行详细说明之前,先对以身份验证功能为例时的输入输出数据进行说明。
示例性地,待模拟功能包括身份验证功能,预设输入数据包括至少一个身份验证信息及至少一个设定数据格式的随机数,关联输出数据包括至少一个目标身份验证加密信息。
其中,设定数据格式是指特定设备内部所能识别的数据格式,该特定设备用于对身份验证加密信息进行解密,例如可以是服务器。目标身份验证加密信息是指最终确定的对身份验证信息加密后的身份验证加密信息。
具体地,待模拟功能为身份验证功能,也就是说,目标应用程序中包含身份验证功能,该身份验证功能是基于NEON指令集开发的,其只能运行于移动终端,而不可运行于PC终端或服务器。例如,直播应用软件中的用户登录功能,其密码加密算法是基于NEON指令来完成的。如果非移动终端要利用测试脚本对直播应用软件进行程序测试,那么首先需要进行登录。然而,由于其算法是NEON指令,所以无法通过脚本直接登录。此时,需要通过本发明实施例所提供的应用程序测试方法来实现。
这里,首先对应用执行终端中的基于NEON指令的身份验证功能的实现过程进行说明。这里以运行于移动终端的直播应用软件中的用户登录功能的为例。移动终端中的直播应用软件进入登录页面时,其会向服务器发送随机数获取请求。而服务器会依据该随机数获取请求生成一个随机数,并下发到移动终端,作为登录密码加密的随机值。然后,移动终端依据用户输入的登录密码和接收到的随机数,利用第五版消息摘要算法(MD5),计算MD5值。之后,进一步的使用NEON指令编写的加密算法(即预设NEON加密算法),对计算的MD5值做进一步的加密计算,获得二次加密结果,并将最终的二次加密结果上报到服务器,由服务器对移动终端的上报结果进行验证。其具体实现过程可以如下:
Result=Md5.Create(server_rand_data+password);
Result2=Neon_encrypt(Result)。
其中,Md5.Create则是MD5的计算接口,server_rand_data是服务器生成的随机数,password是用户输入的登录密码,Result是MD5值,Neon_encrypt是预设NEON加密算法的计算接口,Result2是最终的二次加密结果。
通过上述过程可知,当待模拟功能包括身份验证功能时,预设输入数据包括至少一个身份验证信息及至少一个设定数据格式的随机数。相应地,关联输出数据则为至少一个目标身份验证加密信息。这里的预设输入数据是用于测试的数据,故为了保证测试的可靠性,可以设置多组测试数据,即预设输入数据中包含至少一个身份验证信息,和至少一个设定数据格式的随机数。由于该身份验证信息是用于程序测试的,故可以预先设置该身份验证信息,例如预置一个身份验证信息,并具体预置为“123456”。
同样地,由于该随机数也是用于程序测试的,所以其可以是由服务器依据其随机数生成规则预先生成的随机数,而非依据随机数获取请求实时生成。预先生成的至少一个随机数可以预先以列表形式存储于服务器或应用测试终端(非移动终端)中,以供应用测试终端调取。例如,保存随机数的列表文件名为rand_data_config.txt,其内数据包含3个32位的字符串:“abc12783sd192034d3dabd23090324”、“dd123d903987680292840000000000”和“aabbccddefefeefefe9902222fdddd”。当需要获取随机数时,从上述3个随机数中随机确定一个随机数。
参见图2,本实施例提供的应用程序测试方法包括:
S210、应用测试终端接收用户输入的身份验证信息,以及服务器从随机数列表中随机确定的随机数。
具体地,应用测试终端执行目标应用程序,例如直播应用软件,至用户登录界面时,即启动了目标应用程序在应用测试终端的身份验证功能。此时,应用测试终端接收用户输入的预设的身份验证信息,即“123456”,并向服务器发送随机数获取请求。服务器则依据随机数获取请求,在其内置的随机数列表文件rand_data_config.txt中,随机确定一个随机数作为返回值,并将确定的随机数“dd123d903987680292840000000000”下发至应用测试终端。
S220、应用测试终端依据身份验证信息、随机数及预设配置文件数据,确定目标身份验证加密信息,并依据目标身份验证加密信息,对目标应用程序进行测试。
具体地,在对直播应用软件进行程序测试之前,应用测试终端需要事先获取预设配置文件数据,该预设配置文件数据由应用执行终端生成。
示例性地,应用执行终端依据预设输入数据执行目标应用程序时调用预设的配置文件生成程序生成预设配置文件数据包括:应用执行终端接收至少一个身份验证信息及至少一个随机数;应用执行终端利用每个随机数,采用消息摘要算法,对每个身份验证信息加密,获得至少一个初始身份验证加密信息;应用执行终端采用预设NEON加密算法,对每个初始身份验证加密信息加密,获得至少一个目标身份验证加密信息,预设NEON加密算法基于NEON指令集生成;应用执行终端依据至少一个身份验证信息、至少一个随机数和至少一个目标身份验证加密信息之间的对应关系,调用预设的配置文件生成程序,生成预设配置文件数据。
具体实施时,应用执行终端(移动终端)需要根据预设的测试用数据,例如身份验证信息和随机数,对目标应用程序中的待模拟功能,即直播应用软件中的用户登录功能进行模拟,即生成预设配置文件数据。那么,为了生成所需数据,应用执行终端中针对待模拟功能预先设置一个配置文件生成程序,该预设的配置文件生成程序内部实现过程为:利用每一个随机数,采用MD5算法,对每一个身份验证信息进行一次加密,获得一次加密结果,即初始身份验证加密信息;并利用预设NEON加密算法,对每一个初始身份验证加密信息进行二次加密,确定至少一个目标身份验证加密信息;最后依据身份验证信息、随机数及目标身份验证加密信息之间的关联关系,生成预设配置文件数据。
应用执行终端(移动终端)调用上述预设的配置文件生成程序生成预设配置文件数据的具体过程为:通过预设的配置文件生成程序中的数据输入接口,接收至少一个身份验证信息“123456”,以及至少一个随机数“abc12783sd192034d3dabd23090324”、“dd123d903987680292840000000000”和“aabbccddefefeefefe9902222fdddd”。之后通过调用预设的配置文件生成程序接口Char*GetLoginVerifyData(char*pSeverData,char*password),生成配置文件数据。其中GetLoginVerifyData为接口名,pSeverData为随机数参数名,password为登录密码参数名。其具体实现如下:
NeonR1=GetLoginVerifyData(“abc12783sd192034d3dabd23090324”+“123456”);
NeonR2=GetLoginVerifyData(“dd123d903987680292840000000000”+“123456”);
NeonR3=GetLoginVerifyData(“aabbccddefefeefefe9902222fdddd”+“123456”)。
其中,NeonR1、NeonR2和NeonR3分别为每一个随机数对应的目标身份验证加密信息。从而最终生成预设配置文件数据VerifyConfig.txt,其内容如下:
“abc12783sd192034d3dabd23090324”:“NeonR1”
“dd123d903987680292840000000000”:“NeonR2”
“aabbccddefefeefefe9902222fdddd”:“NeonR3”。
应用测试终端获取到预设配置文件之后,先读取预设配置文件数据,并将数据加载至内存中。之后,根据预设配置文件中预设输入数据及关联输出数据的数据类型,创建map关联容器:map<string,string>verify,并将预设配置文件中的数据***map关联容器,生成如下map容器:
Verify[“abc12783sd192034d3dabd23090324”]=“NeonR1”;
Verify[“dd123d903987680292840000000000”]=“NeonR2”;
Verify[“aabbccddefefeefefe9902222fdddd”]=“NeonR3”。
应用测试终端获取到用户输入的身份验证信息“123456”和服务器下发的随机数“dd123d903987680292840000000000”之后,通过verify.find(“dd123d903987680292840000000000”),就可以得到结果数据“NeonR2”。那么应用测试终端可将结果数据NeonR2发送给服务器进行登录验证,则可以实现登录功能,完成通过非移动终端对移动终端中身份验证功能的模拟,并可进一步对直播应用软件的后续程序进行程序测试。
本实施例的技术方案,以身份验证功能为例,通过应用测试终端从服务器获取随机数,能够使得应用测试终端对目标应用程序的测试更加全面。通过应用测试终端依据身份验证信息、随机数及预设配置文件数据,确定目标身份验证加密信息,并对目标应用程序进行测试,能够用预设配置文件数据对目标应用程序中身份验证功能对应的程序代码进行屏蔽,从而实现对移动终端中身份验证功能的模拟,使得基于移动终端专有指令集开发的功能程序能够运行于非移动终端,进而使得非移动终端便捷且高效地对目标应用程序进行程序测试。
以下是本发明实施例提供的应用程序测试装置的实施例,该装置与上述各实施例的应用程序测试方法属于同一个发明构思,在应用程序测试装置的实施例中未详尽描述的细节内容,可以参考上述应用程序测试方法的实施例。
实施例三
本实施例提供一种应用程序测试装置,参见图3,该装置具体包括:
预设输入数据确定模块310,用于确定与目标应用程序对应的预设输入数据;
测试模块320,用于依据预设输入数据确定模块310确定的预设输入数据及预设配置文件数据,对目标应用程序进行测试,其中,预设配置文件数据由应用执行终端依据预设输入数据执行目标应用程序时调用预设的配置文件生成程序生成。
可选地,目标应用程序中包含待模拟功能,待模拟功能基于NEON指令集实现。
可选地,预设配置文件数据包括与预设输入数据对应的关联输出数据;
相应地,测试模块320具体用于:
依据预设输入数据及关联输出数据的数据类型,创建关联容器;
将预设配置文件数据***关联容器,生成输入数据与输出数据之间的映射关系表;
依据预设输入数据及映射关系表,确定待模拟功能的目标输出数据,并依据目标输出数据,对目标应用程序进行测试。
进一步地,关联容器包括map关联容器。
可选地,待模拟功能包括身份验证功能,预设输入数据包括至少一个身份验证信息及至少一个设定数据格式的随机数,关联输出数据包括至少一个目标身份验证加密信息。
进一步地,预设输入数据确定模块310具体用于:
应用测试终端接收用户输入的身份验证信息,以及服务器从随机数列表中随机确定的随机数。
可选地,测试模块320具体用于:
应用执行终端接收至少一个身份验证信息及至少一个随机数;
应用执行终端利用每个随机数,采用消息摘要算法,对每个身份验证信息加密,获得至少一个初始身份验证加密信息;
应用执行终端采用预设NEON加密算法,对每个初始身份验证加密信息加密,获得至少一个目标身份验证加密信息,预设NEON加密算法基于NEON指令集生成;
应用执行终端依据至少一个身份验证信息、至少一个随机数和至少一个目标身份验证加密信息之间的对应关系,调用预设的配置文件生成程序,生成预设配置文件数据。
通过本发明实施例三的一种应用程序测试装置,实现了更加便捷地在应用测试终端,对运行于应用执行终端中的目标应用程序进行程序测试,使得应用测试终端直接通过预设配置文件数据获取所需数据,减少了应用测试终端在测试过程中与其他终端的交互过程,缩短了程序测试流程,提高了程序测试的效率。
本发明实施例所提供的应用程序测试装置可执行本发明任意实施例所提供的应用程序测试方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述应用程序测试装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例四
参见图4,本实施例提供了一种设备400,其包括:一个或多个处理器420;存储装置410,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器420执行,使得一个或多个处理器420实现本发明实施例所提供的应用程序测试方法,包括:
应用测试终端确定与目标应用程序对应的预设输入数据;
应用测试终端依据预设输入数据及预设配置文件数据,对目标应用程序进行测试,其中,预设配置文件数据由应用执行终端依据预设输入数据执行目标应用程序时调用预设的配置文件生成程序生成。
当然,本领域技术人员可以理解,处理器420还可以实现本发明任意实施例所提供的应用程序测试方法的技术方案。
图4显示的设备400仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,该设备400包括处理器420、存储装置410、输入装置430和输出装置440;设备中处理器420的数量可以是一个或多个,图4中以一个处理器420为例;设备中的处理器420、存储装置410、输入装置430和输出装置440可以通过总线或其他方式连接,图4中以通过总线450连接为例。
存储装置410作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的……方法对应的程序指令/模块(例如,应用程序测试装置中的预设输入数据确定模块和测试模块)。
存储装置410可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置410可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置410可进一步包括相对于处理器420远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置430可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
实施例四
本实施例提供一种包含计算机可执行指令的存储介质,该计算机可执行指令在由计算机处理器执行时用于执行一种应用程序测试方法,该方法包括:
应用测试终端确定与目标应用程序对应的预设输入数据;
应用测试终端依据预设输入数据及预设配置文件数据,对目标应用程序进行测试,其中,预设配置文件数据由应用执行终端依据预设输入数据执行目标应用程序时调用预设的配置文件生成程序生成。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的应用程序测试方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所提供的应用程序测试方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种应用程序测试方法,其特征在于,包括:
应用测试终端确定与目标应用程序对应的预设输入数据;
所述应用测试终端依据所述预设输入数据及预设配置文件数据,对所述目标应用程序进行测试,其中,所述预设配置文件数据由应用执行终端依据所述预设输入数据执行所述目标应用程序时调用预设的配置文件生成程序生成。
2.根据权利要求1所述的方法,其特征在于,所述目标应用程序中包含待模拟功能,所述待模拟功能基于NEON指令集实现。
3.根据权利要求2所述的方法,其特征在于,所述预设配置文件数据包括与所述预设输入数据对应的关联输出数据;
相应地,所述应用测试终端依据所述预设输入数据及预设配置文件数据,对所述目标应用程序进行测试包括:
依据所述预设输入数据及所述关联输出数据的数据类型,创建关联容器;
将所述预设配置文件数据***所述关联容器,生成输入数据与输出数据之间的映射关系表;
依据所述预设输入数据及所述映射关系表,确定所述待模拟功能的目标输出数据,并依据所述目标输出数据,对所述目标应用程序进行测试。
4.根据权利要求3所述的方法,其特征在于,所述关联容器包括map关联容器。
5.根据权利要求3所述的方法,其特征在于,所述待模拟功能包括身份验证功能,所述预设输入数据包括至少一个身份验证信息及至少一个设定数据格式的随机数,所述关联输出数据包括至少一个目标身份验证加密信息。
6.根据权利要求5所述的方法,其特征在于,所述应用测试终端确定与目标应用程序对应的预设输入数据包括:
所述应用测试终端接收用户输入的所述身份验证信息,以及服务器从随机数列表中随机确定的所述随机数。
7.根据权利要求5所述的方法,其特征在于,所述应用执行终端依据所述预设输入数据执行所述目标应用程序时调用预设的配置文件生成程序生成所述预设配置文件数据包括:
所述应用执行终端接收至少一个所述身份验证信息及至少一个所述随机数;
所述应用执行终端利用每个所述随机数,采用消息摘要算法,对每个所述身份验证信息加密,获得至少一个初始身份验证加密信息;
所述应用执行终端采用预设NEON加密算法,对每个所述初始身份验证加密信息加密,获得至少一个所述目标身份验证加密信息,所述预设NEON加密算法基于所述NEON指令集生成;
所述应用执行终端依据至少一个所述身份验证信息、至少一个所述随机数和至少一个所述目标身份验证加密信息之间的对应关系,调用预设的配置文件生成程序,生成所述预设配置文件数据。
8.一种应用程序测试装置,配置于应用测试终端,其特征在于,包括:
预设输入数据确定模块,用于确定与目标应用程序对应的预设输入数据;
测试模块,用于依据所述预设输入数据及预设配置文件数据,对所述目标应用程序进行测试,其中,所述预设配置文件数据由应用执行终端依据所述预设输入数据执行所述目标应用程序时调用预设的配置文件生成程序生成。
9.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的应用程序测试方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一所述的应用程序测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810385438.4A CN108628743B (zh) | 2018-04-26 | 2018-04-26 | 应用程序测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810385438.4A CN108628743B (zh) | 2018-04-26 | 2018-04-26 | 应用程序测试方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108628743A true CN108628743A (zh) | 2018-10-09 |
CN108628743B CN108628743B (zh) | 2022-02-08 |
Family
ID=63694645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810385438.4A Active CN108628743B (zh) | 2018-04-26 | 2018-04-26 | 应用程序测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108628743B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109560998A (zh) * | 2019-02-02 | 2019-04-02 | 腾讯科技(深圳)有限公司 | 一种网络机制测试方法、装置、终端及存储介质 |
CN110032491A (zh) * | 2019-03-01 | 2019-07-19 | 西安电子科技大学 | 一种微处理器监控方法及*** |
CN110083386A (zh) * | 2019-04-04 | 2019-08-02 | 平安普惠企业管理有限公司 | 随机数产生控制方法、装置、计算机设备及存储介质 |
CN110958155A (zh) * | 2019-11-08 | 2020-04-03 | 深圳市元征科技股份有限公司 | 一种测试配置方法及相关装置 |
CN111737134A (zh) * | 2020-06-23 | 2020-10-02 | 湖南国科微电子股份有限公司 | 一种芯片测试方法、装置、电子设备以及存储介质 |
CN112463615A (zh) * | 2020-12-03 | 2021-03-09 | 中国工商银行股份有限公司 | 应用的测试方法、装置、计算设备和介质 |
CN112492294A (zh) * | 2019-09-12 | 2021-03-12 | 北京地平线机器人技术研发有限公司 | 应用程序测试方法、装置、***、网络摄像头以及介质 |
CN112579426A (zh) * | 2019-09-29 | 2021-03-30 | 初速度(苏州)科技有限公司 | 一种对待测试对象的测试方法及装置 |
CN113793490A (zh) * | 2021-08-12 | 2021-12-14 | 北京中交兴路信息科技有限公司 | 一种电子围栏的压力测试方法、装置、存储介质及终端 |
CN114760504A (zh) * | 2022-04-18 | 2022-07-15 | 北京金山云网络技术有限公司 | 直播服务器的测试方法、装置、存储介质以及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104216826A (zh) * | 2013-06-05 | 2014-12-17 | 腾讯科技(深圳)有限公司 | 测试方法及装置 |
US20150347276A1 (en) * | 2014-05-27 | 2015-12-03 | International Business Machines Corporation | Screenshot validation testing |
CN107666470A (zh) * | 2016-07-28 | 2018-02-06 | 腾讯科技(深圳)有限公司 | 一种验证信息的处理方法及装置 |
-
2018
- 2018-04-26 CN CN201810385438.4A patent/CN108628743B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104216826A (zh) * | 2013-06-05 | 2014-12-17 | 腾讯科技(深圳)有限公司 | 测试方法及装置 |
US20150347276A1 (en) * | 2014-05-27 | 2015-12-03 | International Business Machines Corporation | Screenshot validation testing |
CN107666470A (zh) * | 2016-07-28 | 2018-02-06 | 腾讯科技(深圳)有限公司 | 一种验证信息的处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
JESSICA程序猿: "关联容器操作", 《博客园 HTTPS://WWW.CNBLOGS.COM/WUCHANMING/P/3923761.HTML》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109560998A (zh) * | 2019-02-02 | 2019-04-02 | 腾讯科技(深圳)有限公司 | 一种网络机制测试方法、装置、终端及存储介质 |
CN110032491A (zh) * | 2019-03-01 | 2019-07-19 | 西安电子科技大学 | 一种微处理器监控方法及*** |
CN110083386A (zh) * | 2019-04-04 | 2019-08-02 | 平安普惠企业管理有限公司 | 随机数产生控制方法、装置、计算机设备及存储介质 |
CN110083386B (zh) * | 2019-04-04 | 2024-03-19 | 平安普惠企业管理有限公司 | 随机数产生控制方法、装置、计算机设备及存储介质 |
CN112492294B (zh) * | 2019-09-12 | 2024-03-26 | 北京地平线机器人技术研发有限公司 | 应用程序测试方法、装置、***、网络摄像头以及介质 |
CN112492294A (zh) * | 2019-09-12 | 2021-03-12 | 北京地平线机器人技术研发有限公司 | 应用程序测试方法、装置、***、网络摄像头以及介质 |
CN112579426A (zh) * | 2019-09-29 | 2021-03-30 | 初速度(苏州)科技有限公司 | 一种对待测试对象的测试方法及装置 |
CN112579426B (zh) * | 2019-09-29 | 2022-06-24 | 魔门塔(苏州)科技有限公司 | 一种对待测试对象的测试方法及装置 |
CN110958155B (zh) * | 2019-11-08 | 2023-02-28 | 深圳市元征科技股份有限公司 | 一种测试配置方法及相关装置 |
CN110958155A (zh) * | 2019-11-08 | 2020-04-03 | 深圳市元征科技股份有限公司 | 一种测试配置方法及相关装置 |
CN111737134A (zh) * | 2020-06-23 | 2020-10-02 | 湖南国科微电子股份有限公司 | 一种芯片测试方法、装置、电子设备以及存储介质 |
CN111737134B (zh) * | 2020-06-23 | 2023-09-26 | 湖南国科微电子股份有限公司 | 一种芯片测试方法、装置、电子设备以及存储介质 |
CN112463615A (zh) * | 2020-12-03 | 2021-03-09 | 中国工商银行股份有限公司 | 应用的测试方法、装置、计算设备和介质 |
CN113793490B (zh) * | 2021-08-12 | 2022-09-13 | 北京中交兴路信息科技有限公司 | 一种电子围栏的压力测试方法、装置、存储介质及终端 |
CN113793490A (zh) * | 2021-08-12 | 2021-12-14 | 北京中交兴路信息科技有限公司 | 一种电子围栏的压力测试方法、装置、存储介质及终端 |
CN114760504A (zh) * | 2022-04-18 | 2022-07-15 | 北京金山云网络技术有限公司 | 直播服务器的测试方法、装置、存储介质以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108628743B (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628743A (zh) | 应用程序测试方法、装置、设备及存储介质 | |
CN107528865B (zh) | 文件的下载方法和*** | |
CN106919634B (zh) | 跨应用共享数据的方法及网页浏览器 | |
US9769654B2 (en) | Method of implementing a right over a content | |
CN109165266A (zh) | 表单生成方法、装置、计算机设备和存储介质 | |
CN116662941B (zh) | 信息加密方法、装置、计算机设备和存储介质 | |
CN109816364A (zh) | 交易数据处理方法、装置、计算机设备和存储介质 | |
CN111460394A (zh) | 一种版权文件的验证方法、装置及计算机可读存储介质 | |
CN111510442A (zh) | 一种用户验证方法、装置、电子设备及存储介质 | |
CN103971059B (zh) | 一种Cookie本地存储与使用方法 | |
US20230308290A1 (en) | Data sharing method and electronic device | |
CN112150030A (zh) | 基于多单位多身份的账号管理方法、终端设备及存储介质 | |
CN110457869B (zh) | 程序编译加密方法、装置、存储介质及电子设备 | |
CN111416816A (zh) | 联调接口的访问方法、装置、计算机设备和存储介质 | |
CN111865869A (zh) | 基于随机映射的注册、认证方法及装置、介质及电子设备 | |
CN114222288A (zh) | 设备标识生成方法、设备标识校验方法和装置 | |
CN109656989A (zh) | 多数据源整合方法、装置、计算机设备和存储介质 | |
CN108667919A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111090616B (zh) | 一种文件管理方法、对应装置、设备及存储介质 | |
CN112287357A (zh) | 一种针对嵌入式裸机***的控制流验证方法与*** | |
CN107145342A (zh) | 应用的渠道信息的处理方法和装置 | |
CN114448722A (zh) | 跨浏览器登录方法、装置、计算机设备和存储介质 | |
CN107707532A (zh) | Url生成、查询参数验证方法、装置、设备及存储介质 | |
CN111988133B (zh) | ***sm4加密解密验证方法、装置、设备、及存储介质 | |
CN114297274A (zh) | 大数据抽取方法、装置、计算机设备和存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |