CN115509936A - 程序测试方法、装置、介质及设备 - Google Patents

程序测试方法、装置、介质及设备 Download PDF

Info

Publication number
CN115509936A
CN115509936A CN202211300427.4A CN202211300427A CN115509936A CN 115509936 A CN115509936 A CN 115509936A CN 202211300427 A CN202211300427 A CN 202211300427A CN 115509936 A CN115509936 A CN 115509936A
Authority
CN
China
Prior art keywords
program
result
misjudgment
test
test case
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
Application number
CN202211300427.4A
Other languages
English (en)
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.)
Ping An Bank Co Ltd
Original Assignee
Ping An Bank 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 Ping An Bank Co Ltd filed Critical Ping An Bank Co Ltd
Priority to CN202211300427.4A priority Critical patent/CN115509936A/zh
Publication of CN115509936A publication Critical patent/CN115509936A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test 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

程序测试方法、装置、介质及设备
技术领域
本申请涉及电子通信技术领域,尤其涉及一种程序测试技术领域,特别涉及一种程序测试方法、装置、介质及设备。
背景技术
应用程序例如app在上线之前需要进行产品性能测试,确定产品性能控制在合理范围内才可以上线,而产品性能测试主要体现在应用程序的逻辑计算方面是否准确合理。一个应用程序在整个产品性能测试过程主要包括测试用例的创建、测试用例的加载,测试结果的分析,异常问题的定位排查等环节。而目前大多数测试系统都是将各个环节分开进行,未考虑到如何将不同环节构成闭环状态,使得测试过程中的各个环节之间脱节不连贯,进而影响对应用程序的性能测试效率。
发明内容
本申请实施例提供一种程序测试方法、装置、介质及设备,利用本申请实施例提供的程序测试方法,通过将贯穿整个产品性能测试过程的各个关键环节串联在一起形成闭环状态,实现产品性能测试的整个过程连贯且自动化进行,进而提升对产品性能的测试效率。
本申请实施例一方面提供了一种程序测试方法,所述程序测试方法包括:
接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
根据所述程序类型调用与其对应的数据录入界面;
获取录入所述数据录入界面中用于构建测试用例的构建参数;
基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
对所述测试结果进行准确性分析操作,得到分析结果;
若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
在本申请实施例所述的程序测试方法中,所述程序类型包括前端程序;
所述基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例,包括:
调用测试用例录制接口,按照所述构建参数在数据录入界面中的录入顺序,将所有所述构建参数生成流程型的目标测试用例。
在本申请实施例所述的程序测试方法中,所述程序类型包括后端程序;
所述基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例,包括:
调用数据获取接口,根据所述构建参数中的边界值进行扫描自动生成参照用例;
基于所述参照用例,根据预设的组合算法将所有所述构建参数进行排列组合后去重,自动生成组合型的目标测试用例。
在本申请实施例所述的程序测试方法中,所述组合算法为parwise算法。
在本申请实施例所述的程序测试方法中,所述对所述测试结果进行准确性分析操作,得到分析结果,包括:
将所述预测结果与预设的预期结果进行比对,判断所述预测结果与所述预期结果的比对结果是否一致;
根据所述预测结果与预期结果的比对结果得到分析结果;
若所述预测结果与预期结果的比对结果为不一致,则所述分析结果为所述待测试程序对目标测试用例存在误判;
若所述预测结果与预期结果的比对结果为一致,则所述分析结果为所述待测试程序对目标测试用例不存在误判。
在本申请实施例所述的程序测试方法中,所述若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因,包括:
若所述分析结果为误判,则调出待测程序当前的日志文件;
根据预先插入所述待测试程序的运行文件中的断言验证代码在所述日志文件中映射出的异常标记位置;
根据所述异常标记位置确定所述分析结果为误判的误判原因。
在本申请实施例所述的程序测试方法中,所述方法还包括:
根据所述误判原因确定责任归属人,将所述误判原因发送至与其对应的责任归属人的客户端。
相应的,本申请实施例另一方面还提供了一种程序测试装置,所述程序测试装置包括:
接收模块,用于接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
调用模块,用于根据所述程序类型调用与其对应的数据录入界面;
录入模块,用于获取录入所述数据录入界面中用于构建测试用例的构建参数;
生成模块,用于基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
测试模块,用于将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
分析模块,用于对所述测试结果进行准确性分析操作,得到分析结果;
排查模块,用于若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
相应的,本申请实施例另一方面还提供了一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行如上所述的程序测试方法。
相应的,本申请实施例另一方面还提供了一种终端设备,包括处理器和存储器,所述存储器存储有多条指令,所述处理器加载所述指令以执行如上所述的程序测试方法。
本申请实施例提供了一种程序测试方法、装置、介质及设备,该方法通过接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;根据所述程序类型调用与其对应的数据录入界面;获取录入所述数据录入界面中用于构建测试用例的构建参数;基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;对所述测试结果进行准确性分析操作,得到分析结果;若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。利用本申请实施例提供的程序测试方法,通过将贯穿整个产品性能测试过程的各个关键环节串联在一起形成闭环状态,实现产品性能测试的整个过程连贯且自动化进行,进而提升对产品性能的测试效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的程序测试方法的流程示意图。
图2为本申请实施例提供的程序测试装置的结构示意图。
图3为本申请实施例提供的程序测试装置的另一结构示意图。
图4为本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本申请的保护范围。
需要说明的是,本方案主要适用于程序测试的应用场景中,以下内容是对本方案背景做出的简单介绍:
本方案主要是围绕“如何在对程序进行性能测试时可以做到各个环节连贯不脱节,进而提升对程序性能的测试效率”这一技术问题开展的。可以理解的是,一个应用程序例如app在上线之前需要进行产品性能测试,确定产品性能控制在合理范围内才可以上线,而产品性能测试主要体现在应用程序的逻辑计算方面是否准确合理。一个应用程序在整个产品性能测试过程主要包括测试用例的创建、测试用例的加载,测试结果的分析,异常问题的定位排查等环节。而目前大多数测试系统都是将各个环节分开进行,未考虑到如何将不同环节构成闭环状态,使得测试过程中的各个环节之间脱节不连贯,进而影响对应用程序的性能测试效率。
为了解决上述技术问题,本申请实施例提供一种程序测试方法。利用本申请实施例提供的程序测试方法,通过将贯穿整个产品性能测试过程的各个关键环节串联在一起形成闭环状态,实现产品性能测试的整个过程连贯且自动化进行,进而提升对产品性能的测试效率。
请参阅图1,图1为本申请实施例提供的程序测试方法的流程示意图。所述程序测试方法,应用于终端设备中。可选地,该终端设备为终端或服务器。可选地,该服务器是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。可选地,该终端是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能语音交互设备、智能家电及车载终端等,但并不局限于此。
在一实施例中,所述方法可以包括以下步骤:
步骤101,接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型。
在本实施例中,测试人员可以根据待测试程序的程序类型向终端设备发出程序测试请求,触发程序自动化测试操作的运行。
其中,本方案涵盖了目前大多数程序类型,具体包括前端程序和后端程序,能够适用不同类型的程序进行性能测试操作。可以理解的是,前端程序例如能够实现人机交互的程序,用户能够通过交互界面像终端发出指令,示例性地,当用户在登录一个app之前需要在登录界面输入账号密码后点击确认按钮,在此过程中用户的输入操作和点击操作都属于人机交互的方式,该类程序就称为前端程序。后端程序指的是在用户无法察觉的的情况下进行的程序,示例性地,当用户在app的登录界面中点击确认按钮后系统后台会对用户输入的账号密码进行验证,判断用户输入的账号密码是否正确,在此过程中用户并无法察觉,该类程序就称为后端程序。
步骤102,根据所述程序类型调用与其对应的数据录入界面。
其中,数据录入界面是根据测试人员选择的程序类型而定的,不同类型的程序类型展示的数据录入界面不同,但都是供测试人员输入用于构建测试用例的构建参数。
步骤103,获取录入所述数据录入界面中用于构建测试用例的构建参数。
步骤104,基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例。
其中,当终端设备接收到的程序测试请求中待测试程序的程序类型为前端程序时,通过调用测试用例录制接口,按照构建参数在数据录入界面中的录入顺序,将所有构建参数生成流程型的目标测试用例。
当终端设备接收到的程序测试请求中待测试程序的程序类型为后端程序时,通过调用数据获取接口,根据构建参数中的边界值进行扫描自动生成参照用例;基于参照用例,根据预设的组合算法将所有构建参数进行排列组合后去重,自动生成组合型的目标测试用例。
示例性地,当测试人员录入的构建参数为“用户名1”、“用户名2”、“id1”、“id2”、“性别男”、“性别女”等构建参数时,同时测试人员从构建参数中确定边界值并生成参照用例(用户名,id),此时终端设备会根据参照用例对所有的构建参数进行排列组合后去重,得到组合型的目标测试用例。在一些实施例中,可以基于组合算法parwise算法实现。
步骤105,将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果。
步骤106,对所述测试结果进行准确性分析操作,得到分析结果。
在本实施例中,通过将预测结果与预设的预期结果进行比对,判断预测结果与预期结果的比对结果是否一致,根据预测结果与预期结果的比对结果得到分析结果,若预测结果与预期结果的比对结果为不一致,则分析结果为待测试程序对目标测试用例存在误判,若预测结果与预期结果的比对结果为一致,则分析结果为待测试程序对目标测试用例不存在误判。
步骤107,若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
在本实施例中,若分析结果为误判,则调出待测程序当前的日志文件,根据预先插入待测试程序的运行文件中的断言验证代码在日志文件中映射出的异常标记位置,根据异常标记位置确定分析结果为误判的误判原因。
在一些实施例中,还能够根据误判原因确定责任归属人,将误判原因发送至与其对应的责任归属人的客户端,由对应的技术人员处理。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
具体实施时,本申请不受所描述的各个步骤的执行顺序的限制,在不产生冲突的情况下,某些步骤还可以采用其它顺序进行或者同时进行。
由上可知,本申请实施例提供的程序测试方法通过接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;根据所述程序类型调用与其对应的数据录入界面;获取录入所述数据录入界面中用于构建测试用例的构建参数;基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;对所述测试结果进行准确性分析操作,得到分析结果;若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。利用本申请实施例提供的程序测试方法,通过将贯穿整个产品性能测试过程的各个关键环节串联在一起形成闭环状态,实现产品性能测试的整个过程连贯且自动化进行,进而提升对产品性能的测试效率。
本申请实施例还提供一种程序测试装置,所述程序测试装置可以集成在终端设备中。
请参阅图2,图2为本申请实施例提供的程序测试装置的结构示意图。程序测试装置30可以包括:
接收模块31,用于接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
调用模块32,用于根据所述程序类型调用与其对应的数据录入界面;
录入模块33,用于获取录入所述数据录入界面中用于构建测试用例的构建参数;
生成模块34,用于基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
测试模块35,用于将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
分析模块36,用于对所述测试结果进行准确性分析操作,得到分析结果;
排查模块37,用于若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
在一些实施例中,所述程序类型包括前端程序;所述调用模块32,用于调用测试用例录制接口,按照所述构建参数在数据录入界面中的录入顺序,将所有所述构建参数生成流程型的目标测试用例。
在一些实施例中,所述程序类型包括后端程序;所述调用模块32,用于调用数据获取接口,根据所述构建参数中的边界值进行扫描自动生成参照用例;基于所述参照用例,根据预设的组合算法将所有所述构建参数进行排列组合后去重,自动生成组合型的目标测试用例。
在一些实施例中,所述组合算法为parwise算法。
在一些实施例中,所述分析模块36,用于将所述预测结果与预设的预期结果进行比对,判断所述预测结果与所述预期结果的比对结果是否一致;根据所述预测结果与预期结果的比对结果得到分析结果;若所述预测结果与预期结果的比对结果为不一致,则所述分析结果为所述待测试程序对目标测试用例存在误判;若所述预测结果与预期结果的比对结果为一致,则所述分析结果为所述待测试程序对目标测试用例不存在误判。
在一些实施例中,所述排查模块37,用于若所述分析结果为误判,则调出待测程序当前的日志文件;根据预先插入所述待测试程序的运行文件中的断言验证代码在所述日志文件中映射出的异常标记位置;根据所述异常标记位置确定所述分析结果为误判的误判原因。
在一些实施例中,所述装置还包括发送模块,用于根据所述误判原因确定责任归属人,将所述误判原因发送至与其对应的责任归属人的客户端。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现。
由上可知,本申请实施例提供的程序测试装置30,其中接收模块31用于接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;调用模块32用于根据所述程序类型调用与其对应的数据录入界面;录入模块33用于获取录入所述数据录入界面中用于构建测试用例的构建参数;生成模块34用于基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;测试模块35用于将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;分析模块36用于对所述测试结果进行准确性分析操作,得到分析结果;排查模块37用于若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
请参阅图3,图3为本申请实施例提供的程序测试装置的另一结构示意图,程序测试装置30包括存储器120、一个或多个处理器180、以及一个或多个应用程序,其中该一个或多个应用程序被存储于该存储器120中,并配置为由该处理器180执行;该处理器180可以包括接收模块31,调用模块32,录入模块33,生成模块34,测试模块35,分析模块36,以及排查模块37。例如,以上各个部件的结构和连接关系可以如下:
存储器120可用于存储应用程序和数据。存储器120存储的应用程序中包含有可执行代码。应用程序可以组成各种功能模块。处理器180通过运行存储在存储器120的应用程序,从而执行各种功能应用以及数据处理。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180对存储器120的访问。
处理器180是装置的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器120内的应用程序,以及调用存储在存储器120内的数据,执行装置的各种功能和处理数据,从而对装置进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等。
具体在本实施例中,处理器180会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行代码加载到存储器120中,并由处理器180来运行存储在存储器120中的应用程序,从而实现各种功能:
接收指令,用于接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
调用指令,用于根据所述程序类型调用与其对应的数据录入界面;
录入指令,用于获取录入所述数据录入界面中用于构建测试用例的构建参数;
生成指令,用于基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
测试指令,用于将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
分析指令,用于对所述测试结果进行准确性分析操作,得到分析结果;
排查指令,用于若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
在一些实施例中,所述程序类型包括前端程序;所述调用指令,用于调用测试用例录制接口,按照所述构建参数在数据录入界面中的录入顺序,将所有所述构建参数生成流程型的目标测试用例。
在一些实施例中,所述程序类型包括后端程序;所述调用指令,用于调用数据获取接口,根据所述构建参数中的边界值进行扫描自动生成参照用例;基于所述参照用例,根据预设的组合算法将所有所述构建参数进行排列组合后去重,自动生成组合型的目标测试用例。
在一些实施例中,所述组合算法为parwise算法。
在一些实施例中,所述分析指令,用于将所述预测结果与预设的预期结果进行比对,判断所述预测结果与所述预期结果的比对结果是否一致;根据所述预测结果与预期结果的比对结果得到分析结果;若所述预测结果与预期结果的比对结果为不一致,则所述分析结果为所述待测试程序对目标测试用例存在误判;若所述预测结果与预期结果的比对结果为一致,则所述分析结果为所述待测试程序对目标测试用例不存在误判。
在一些实施例中,所述排查指令,用于若所述分析结果为误判,则调出待测程序当前的日志文件;根据预先插入所述待测试程序的运行文件中的断言验证代码在所述日志文件中映射出的异常标记位置;根据所述异常标记位置确定所述分析结果为误判的误判原因。
在一些实施例中,所述程序还包括发送指令,用于根据所述误判原因确定责任归属人,将所述误判原因发送至与其对应的责任归属人的客户端。
本申请实施例还提供一种终端设备。所述终端设备可以是服务器、智能手机、电脑、平板电脑等设备。
请参阅图4,图4示出了本申请实施例提供的终端设备的结构示意图,该终端设备可以用于实施上述实施例中提供的程序测试方法。该终端设备1200可以为智能手机或平板电脑。
如图4所示,终端设备1200可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上(图中仅示出一个)计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、传输模块170、包括有一个或者一个以上(图中仅示出一个)处理核心的处理器180以及电源190等部件。本领域技术人员可以理解,图4中示出的终端设备1200结构并不构成对终端设备1200的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。RF电路110可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。RF电路110可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。
存储器120可用于存储软件程序以及模块,如上述实施例中程序测试方法对应的程序指令/模块,处理器180通过运行存储在存储器120内的软件程序以及模块,从而执行各种功能应用以及数据处理,可以根据终端设备所处的当前场景来自动选择振动提醒模式来进行程序测试,既能够保证会议等场景不被打扰,又能保证用户可以感知来电,提升了终端设备的智能性。存储器120可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器120可进一步包括相对于处理器180远程设置的存储器,这些远程存储器可以通过网络连接至终端设备1200。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触控显示屏或者触控板,可收集用户在其上或附近的触控操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触控检测装置和触控控制器两个部分。其中,触控检测装置检测用户的触控方位,并检测触控操作带来的信号,将信号传送给触控控制器;触控控制器从触控检测装置上接收触控信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端设备1200的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid CrystalDisplay,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触控操作后,传送给处理器180以确定触控事件的类型,随后处理器180根据触控事件的类型在显示面板141上提供相应的视觉输出。虽然在图4中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输出功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
终端设备1200还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端设备1200移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端设备1200还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与终端设备1200之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端设备1200的通信。
终端设备1200通过传输模块170(例如Wi-Fi模块)可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了传输模块170,但是可以理解的是,其并不属于终端设备1200的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是终端设备1200的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端设备1200的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;在一些实施例中,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
终端设备1200还包括给各个部件供电的电源190,在一些实施例中,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端设备1200还可以包括摄像头(如前置摄像头、后置摄像头)、蓝牙模块等,在此不再赘述。具体在本实施例中,终端设备1200的显示单元140是触控屏显示器,终端设备1200还包括有存储器120,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器120中,且经配置以由一个或者一个以上处理器180执行一个或者一个以上程序包含用于进行以下操作的指令:
接收指令,用于接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
调用指令,用于根据所述程序类型调用与其对应的数据录入界面;
录入指令,用于获取录入所述数据录入界面中用于构建测试用例的构建参数;
生成指令,用于基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
测试指令,用于将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
分析指令,用于对所述测试结果进行准确性分析操作,得到分析结果;
排查指令,用于若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
在一些实施例中,所述程序类型包括前端程序;所述调用指令,用于调用测试用例录制接口,按照所述构建参数在数据录入界面中的录入顺序,将所有所述构建参数生成流程型的目标测试用例。
在一些实施例中,所述程序类型包括后端程序;所述调用指令,用于调用数据获取接口,根据所述构建参数中的边界值进行扫描自动生成参照用例;基于所述参照用例,根据预设的组合算法将所有所述构建参数进行排列组合后去重,自动生成组合型的目标测试用例。
在一些实施例中,所述组合算法为parwise算法。
在一些实施例中,所述分析指令,用于将所述预测结果与预设的预期结果进行比对,判断所述预测结果与所述预期结果的比对结果是否一致;根据所述预测结果与预期结果的比对结果得到分析结果;若所述预测结果与预期结果的比对结果为不一致,则所述分析结果为所述待测试程序对目标测试用例存在误判;若所述预测结果与预期结果的比对结果为一致,则所述分析结果为所述待测试程序对目标测试用例不存在误判。
在一些实施例中,所述排查指令,用于若所述分析结果为误判,则调出待测程序当前的日志文件;根据预先插入所述待测试程序的运行文件中的断言验证代码在所述日志文件中映射出的异常标记位置;根据所述异常标记位置确定所述分析结果为误判的误判原因。
在一些实施例中,所述程序还包括发送指令,用于根据所述误判原因确定责任归属人,将所述误判原因发送至与其对应的责任归属人的客户端。
本申请实施例还提供一种终端设备。所述终端设备可以是智能手机、电脑等设备。
由上可知,本申请实施例提供了一种终端设备1200,所述终端设备1200执行以下步骤:
接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
根据所述程序类型调用与其对应的数据录入界面;
获取录入所述数据录入界面中用于构建测试用例的构建参数;
基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
对所述测试结果进行准确性分析操作,得到分析结果;
若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
本申请实施例还提供一种存储介质,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,所述计算机执行上述任一实施例所述的程序测试方法。
需要说明的是,对本申请所述程序测试方法而言,本领域普通测试人员可以理解实现本申请实施例所述程序测试方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读存储介质中,如存储在终端设备的存储器中,并被该终端设备内的至少一个处理器执行,在执行过程中可包括如所述程序测试方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储器(ROM,ReadOnly Memory)、随机存取记忆体(RAM,Random Access Memory)等。
对本申请实施例的所述程序测试装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中,所述存储介质譬如为只读存储器,磁盘或光盘等。
以上对本申请实施例所提供的程序测试方法、装置、介质及设备进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种程序测试方法,其特征在于,包括:
接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
根据所述程序类型调用与其对应的数据录入界面;
获取录入所述数据录入界面中用于构建测试用例的构建参数;
基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
对所述测试结果进行准确性分析操作,得到分析结果;
若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
2.如权利要求1所述的程序测试方法,其特征在于,所述程序类型包括前端程序;
所述基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例,包括:
调用测试用例录制接口,按照所述构建参数在数据录入界面中的录入顺序,将所有所述构建参数生成流程型的目标测试用例。
3.如权利要求1所述的程序测试方法,其特征在于,所述程序类型包括后端程序;
所述基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例,包括:
调用数据获取接口,根据所述构建参数中的边界值进行扫描自动生成参照用例;
基于所述参照用例,根据预设的组合算法将所有所述构建参数进行排列组合后去重,自动生成组合型的目标测试用例。
4.如权利要求3所述的程序测试方法,其特征在于,所述组合算法为parwise算法。
5.如权利要求1所述的程序测试方法,其特征在于,所述对所述测试结果进行准确性分析操作,得到分析结果,包括:
将所述预测结果与预设的预期结果进行比对,判断所述预测结果与所述预期结果的比对结果是否一致;
根据所述预测结果与预期结果的比对结果得到分析结果;
若所述预测结果与预期结果的比对结果为不一致,则所述分析结果为所述待测试程序对目标测试用例存在误判;
若所述预测结果与预期结果的比对结果为一致,则所述分析结果为所述待测试程序对目标测试用例不存在误判。
6.如权利要求1所述的程序测试方法,其特征在于,所述若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因,包括:
若所述分析结果为误判,则调出待测程序当前的日志文件;
根据预先插入所述待测试程序的运行文件中的断言验证代码在所述日志文件中映射出的异常标记位置;
根据所述异常标记位置确定所述分析结果为误判的误判原因。
7.如权利要求1所述的程序测试方法,其特征在于,所述方法还包括:
根据所述误判原因确定责任归属人,将所述误判原因发送至与其对应的责任归属人的客户端。
8.一种程序测试装置,其特征在于,所述程序测试装置包括:
接收模块,用于接收程序测试请求,解析所述程序测试请求得到待测试程序的程序类型;
调用模块,用于根据所述程序类型调用与其对应的数据录入界面;
录入模块,用于获取录入所述数据录入界面中用于构建测试用例的构建参数;
生成模块,用于基于所述构建参数,调用与所述程序类型的测试用例构建接口,自动生成与所述待测试程序对应的目标测试用例;
测试模块,用于将所述目标测试用例加载入所述待测试程序进行测试操作,得到测试结果;
分析模块,用于对所述测试结果进行准确性分析操作,得到分析结果;
排查模块,用于若所述分析结果为误判,则基于所述分析结果对误判原因进行定位排查,确定所述误判原因。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至7任一项所述的程序测试方法。
10.一种终端设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令,所述处理器加载所述指令以执行权利要求1至7任一项所述的程序测试方法。
CN202211300427.4A 2022-10-24 2022-10-24 程序测试方法、装置、介质及设备 Pending CN115509936A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211300427.4A CN115509936A (zh) 2022-10-24 2022-10-24 程序测试方法、装置、介质及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211300427.4A CN115509936A (zh) 2022-10-24 2022-10-24 程序测试方法、装置、介质及设备

Publications (1)

Publication Number Publication Date
CN115509936A true CN115509936A (zh) 2022-12-23

Family

ID=84513070

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211300427.4A Pending CN115509936A (zh) 2022-10-24 2022-10-24 程序测试方法、装置、介质及设备

Country Status (1)

Country Link
CN (1) CN115509936A (zh)

Similar Documents

Publication Publication Date Title
CN108039963B (zh) 一种容器配置方法、装置及存储介质
CN106649126B (zh) 一种对应用程序进行测试的方法和装置
CN107329901B (zh) 数据包抓取方法、终端、服务器和存储介质
CN109947650B (zh) 脚本步骤处理方法、装置和系统
CN110335386B (zh) 一种身份验证方法、装置、终端以及存储介质
CN109451130B (zh) 移动终端测试方法、装置、移动终端及存储介质
CN112415367A (zh) 驱动芯片异常侦测方法、装置、电子设备及可读存储介质
CN110069407B (zh) 一种应用程序的功能测试方法和装置
CN114428546A (zh) 后台应用清理方法、装置、存储介质及终端设备
CN106709330B (zh) 记录文件执行行为的方法及装置
CN112199246A (zh) 终端测试方法、装置、存储介质及移动终端
CN115600213A (zh) 基于应用程序的漏洞管理方法、装置、介质及设备
CN115589432A (zh) 消息推送管理方法、装置、介质及设备
CN106357513B (zh) 一种消息处理方法、设备、服务器及消息处理系统
CN115828845A (zh) 多媒体数据查看方法、装置、介质及设备
CN115328770A (zh) 应用程序的测试方法、装置、电子设备及存储介质
CN112486350B (zh) 移动终端触摸屏的检测方法、装置、存储介质及移动终端
CN115061939A (zh) 数据集安全测试方法、装置及存储介质
CN115509936A (zh) 程序测试方法、装置、介质及设备
CN109558731B (zh) 特征码处理方法、装置及存储介质
CN112667868A (zh) 一种数据检测方法以及装置
CN111651313B (zh) 识别卡的转换方法及系统、存储介质及终端设备
CN115344413A (zh) 账单异常问题定位方法、装置、介质及设备
CN115543841A (zh) 数据更新测试方法、装置、介质及设备
CN115509881A (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