一种移动端app运行测试方法和设备
文献发布时间:2023-06-23 06:30:03
技术领域
本发明涉及设备测试技术领域,具体涉及一种移动端app运行测试方法和设备。
背景技术
app是基于移动互联网软件、及软硬件环境的应用软件。app测试就是要找出app中的bug,通过各种手段和测试工具,判断app系统是否能够满足预期标准。在app开发过程中容易出现缺乏有效沟通,功能复杂、编程错误、需求不断变更、时间压力、缺乏文档的代码、app开发工具、SDK和人员的疏忽等原因引发的错误,通过测试能够发现、找出其中的错误,解决错误,从而提高app的质量。
但是现在app的各个功能的信息分布在不同的地方,对app进行测试时,需要手动筛选汇总数据。
发明内容
有鉴于此,本发明的目的在于提供一种移动端app运行测试方法和设备,以克服目前app测试无法自动获取app运行数据的问题。
为实现以上目的,本发明采用如下技术方案:
第一方面,本申请提供了一种移动端app运行测试方法,包括:
获取用户测试指令;
根据所述测试指令运行app,并选择测试功能;
获取所述测试功能对应的测试脚本;
运行所述测试脚本,获取运行结果;
获取报告模板;
根据所述运行结果和所述报告模板生成测试报告。
进一步的,以上所述的方法,所述根据所述测试指令运行app,并选择测试功能,包括:
若所述测试指令为直接生成报告包括指令,则获取数据库中存储的历史测试数据,并根据所述历史测试数据和所述报告模板生成测试报告;
若所述测试指令为现场测试指令,则运行app,并选择测试功能。
进一步的,以上所述的方法,所述测试功能,至少包括:安装卸载测试、交互测试、稳定性测试、安全测试和功耗测试。
进一步的,以上所述的方法,若所述测试功能为所述安装卸载测试,则所述运行所述测试脚本,获取运行结果,包括:
获取所述app低版本的连接和所述app当前版本的连接;
安装低版本的所述app;
通过所述app当前版本的连接将所述app升级到当前版本,并记录升级数据;
卸载当前版本的所述app,并记录卸载数据;
安装当前版本的所述app,并记录安装数据。
进一步的,以上所述的方法,若所述测试功能为所述交互测试,则所述运行所述测试脚本,获取运行结果,包括:
至少一次切换所述app在移动端的运行状态,并记录切换数据;其中,所述运行状态包括:前台运行和后台运行;
至少一次的杀掉app进程及在所述进程杀掉后再次启动所述进程,并记录运行数据。
进一步的,以上所述的方法,若所述测试功能为所述稳定性测试,则所述运行所述测试脚本,获取运行结果,包括:
在移动端设置中心中设置预设时长;
安装所述app,运行monkey程序,并记录稳定测试数据。
进一步的,以上所述的方法,若所述测试功能为所述安全测试,则所述运行所述测试脚本,获取运行结果,包括:
对输入框进行sql注入测试,及对接口进行越权测试,并记录安全测试数据。
进一步的,以上所述的方法,若所述测试功能为所述功耗测试,则所述运行所述测试脚本,获取运行结果,包括:
运行所述app的固定流程,并在所述流程结束后,记录运行所述app的耗电量和内存占比。
进一步的,以上所述的方法,还包括:
将所述运行结果和所述测试报告存储到数据库中。
另一方面,本申请提供了一种移动端app运行测试设备,包括处理器和存储器,所述处理器与存储器相连:
其中,所述处理器,用于调用并执行所述存储器中存储的程序;
所述存储器,用于存储所述程序,所述程序至少用于执行以上任一项所述的方法。
本发明的有益效果为:
本申请首先获取用户测试指令,根据测试指令运行app,并选择测试功能,获取测试功能对应的测试脚本,运行测试脚本,获取运行结果,获取报告模板,根据运行结果和报告模板生成测试报告。本申请中,在对app进行测试时,通过运行测试脚本进行测试,并在运行结束后自动获取运行结果,以及根据报告模板生成测试包括,从而解决了目前app测试无法自动获取app运行数据的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种移动端app运行测试方法一种实施例提供的流程图;
图2是本发明一种移动端app运行测试设备一种实施例提供的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
app是基于移动互联网软件、及软硬件环境的应用软件。app测试就是要找出app中的bug,通过各种手段和测试工具,判断app系统是否能够满足预期标准。在app开发过程中容易出现缺乏有效沟通,功能复杂、编程错误、需求不断变更、时间压力、缺乏文档的代码、app开发工具、SDK和人员的疏忽等原因引发的错误,通过测试能够发现、找出其中的错误,解决错误,从而提高app的质量。
但是现在app的各个功能的信息分布在不同的地方,对app进行测试时,需要手动筛选汇总数据。
有鉴于此,本发明的目的在于提供一种移动端app运行测试方法和设备,以克服目前app测试无法自动获取app运行数据的问题。
图1是本发明一种移动端app运行测试方法一种实施例提供的流程图。请参阅图1,本实施例可以包括以下步骤:
S1、获取用户测试指令。
S2、根据测试指令运行app,并选择测试功能。
S3、获取测试功能对应的测试脚本。
S4、运行测试脚本,获取运行结果。
S5、获取报告模板。
S6、根据运行结果和报告模板生成测试报告。
可以理解的是,本实施例首先获取用户测试指令,根据测试指令运行app,并选择测试功能,获取测试功能对应的测试脚本,运行测试脚本,获取运行结果,获取报告模板,根据运行结果和报告模板生成测试报告。本实施例中,在对app进行测试时,通过运行测试脚本进行测试,并在运行结束后自动获取运行结果,以及根据报告模板生成测试包括,从而解决了目前app测试无法自动获取app运行数据的问题。
优选的,步骤S2,包括:
若测试指令为直接生成报告包括指令,则获取数据库中存储的历史测试数据,并根据历史测试数据和报告模板生成测试报告;
若测试指令为现场测试指令,则运行app,并选择测试功能。
可以理解的是,为快速生产测试包括,用户可以选择直接生成报告包括指令,此时,会直接在移动端的数据库中调取历史数据,通过历史数据和报告模板,快速生产测试报告。
优选的,测试功能,至少包括:安装卸载测试、交互测试、稳定性测试、安全测试和功耗测试。
优选的,若测试功能为安装卸载测试,则步骤S4,包括:
获取app低版本的连接和app当前版本的连接;
安装低版本的app;
通过app当前版本的连接将app升级到当前版本,并记录升级数据;
卸载当前版本的app,并记录卸载数据;
安装当前版本的app,并记录安装数据。
可以理解的是,安装卸载测试包含app的安装,卸载和升级。此时需要在配置中心配置app的低版本的连接和当前版本的连接,且都为必填项。系统默认安装低版本的app,然后通过app升级到当前版本。执行安装卸载测试时,直接通过连接安装app,并进行卸载。并将数据进行统计。
优选的,若测试功能为交互测试,则步骤S4,包括:
至少一次切换app在移动端的运行状态,并记录切换数据;其中,运行状态包括:前台运行和后台运行;
至少一次的杀掉app进程及在进程杀掉后再次启动进程,并记录运行数据。
可以理解的是,暗爪回归app之后,app在前台、后台,多次切换,以及杀掉进程再次启动,并进行多次操作来进行交互测试,并将数据进行统计。
优选的,若测试功能为稳定性测试,则步骤S4,包括:
在移动端设置中心中设置预设时长;
安装app,运行monkey程序,并记录稳定测试数据。
可以理解的是,稳定性测试,主要是使用monkey进行测试,在设置中心进行时长设置,安装app,运行monkey程序,并将数据进行统计。
优选的,若测试功能为安全测试,则步骤S4,包括:
对输入框进行sql注入测试,及对接口进行越权测试,并记录安全测试数据。
可以理解的是,安全测试,系统在脚本运行的过程中,对输入框进行sql注入等测试,同时对接口进行越权测试,收集测试信息并将数据进行统计。
优选的,若测试功能为功耗测试,则步骤S4,包括:
运行app的固定流程,并在流程结束后,记录运行app的耗电量和内存占比。
优选的,还可以进行其他测试功能,主要为自定义脚本运行,此时需要上传自动以脚本,运行脚本,并将数据进行统计。
优选的,还包括:
将运行结果和测试报告存储到数据库中。
可以理解的是,将每次测试脚本的运行结果和生成的相应的报告存储到数据库中,以便于用户需要进行快速生产报告时,直接从数据库中提取历史测试脚本的运行结果和生成的相应的报告存储,直接生成测试报告。
本发明还提供了一种移动端app运行测试设备,用于实现上述方法实施例。图2是本发明一种移动端app运行测试设备一种实施例提供的结构示意图。如图2所示,本实施例的设备包括处理器21和存储器22,处理器21与存储器22相连。其中,处理器21用于调用并执行所述存储器22中存储的程序;存储器22用于存储所述程序,所述程序至少用于执行以上实施例中的方法。
本申请实施例提供的具体实施方案可以参考以上任意实施例的一种移动端app运行测试方法的实施方式,此处不再赘述。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
- APP运行测试方法、装置、可读存储介质和计算机设备
- 一种基于移动端APP系统的工程设备租赁智能解决方法