CN117093500A - 软件的测试方法、装置以及设备 - Google Patents

软件的测试方法、装置以及设备 Download PDF

Info

Publication number
CN117093500A
CN117093500A CN202311230045.3A CN202311230045A CN117093500A CN 117093500 A CN117093500 A CN 117093500A CN 202311230045 A CN202311230045 A CN 202311230045A CN 117093500 A CN117093500 A CN 117093500A
Authority
CN
China
Prior art keywords
target
software
data packet
test
preset
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
CN202311230045.3A
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.)
Bank of China Ltd
Original Assignee
Bank of China 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 Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202311230045.3A priority Critical patent/CN117093500A/zh
Publication of CN117093500A publication Critical patent/CN117093500A/zh
Pending legal-status Critical Current

Links

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/3688Test management for test execution, e.g. scheduling of test suites
    • 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/3692Test management for test results analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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

软件的测试方法、装置以及设备
技术领域
本申请涉及人工智能技术领域,尤其涉及一种软件的测试方法、装置以及设备。
背景技术
随着计算机技术的发展,软件更新迭代的速度也越来越快,例如,可以为软件新增功能,也可以对软件依赖的架构环境进行升级或者更换等。此时,在对软件进行更新迭代之后,需要对软件进行测试之后再上线,以保证软件的可靠性和准确性。
相关技术中,在对更新迭代的软件进行测试时,主要是针对软件本次的更新迭代内容,来编写对应的测试案例,并将该测试案例发送至软件。之后,可以通过人工检查软件在执行该测试案例之后得到的测试结果是否异常,来判断软件是否测试通过。
这种测试方式,只能从软件本身出发,针对软件本次的更新迭代内容,来编写测试案例进行测试,导致软件测试的测试层面较为单一,无法保证软件在实际应用场景下的有效性和准确性。同时,通过人工检查测试结果是否异常,加大了工作人员的工作量,耗费了较多的人力成本和时间成本。
发明内容
本申请提供一种软件的测试方法、装置以及设备,用以解决软件测试的准确率低、有效性差的问题。
第一方面,本申请提供一种软件的测试方法,包括:
响应于对目标软件的软件测试指令,获取目标测试案例;其中,所述软件测试指令表征对所述目标软件进行测试;所述目标测试案例表征所述目标软件测试时的执行数据;
将所述目标测试案例中的第一预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第一预设数据包之后,得到的第一目标数据包;其中,所述第一预设数据包指示预先设置的由所述目标软件的前端发送至所述目标软件的执行数据;
将所述目标测试案例中的第二预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第二预设数据包之后,得到的第二目标数据包;其中,所述第二预设数据包指示预先设置的由所述目标软件的后端发送至所述目标软件的执行数据;
将所述第一目标数据包与所述目标测试案例中的第三预设数据包进行对比处理,并将所述第二目标数据包与所述目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果;其中,所述第三预设数据包表征预先设置的所述目标软件执行所述第一预设数据包之后得到的执行数据;所述第四预设数据包表征预先设置的所述目标软件执行所述第二预设数据包之后得到的执行数据;所述数据对比结果表征所述目标软件是否测试通过。
一个示例中,所述响应于对目标软件的软件测试指令,获取目标测试案例,包括:
响应于对所述目标软件的软件测试指令,确定所述软件测试指令对应的软件测试类型;其中,所述软件测试类型表征是否对所述目标软件进行回归测试;
基于所述软件测试类型,从测试案例数据库中获取所述目标测试案例;其中,所述测试案例数据库中包括测试所述目标软件的全部测试案例。
一个示例中,在响应于对目标软件的软件测试指令,获取目标测试案例之前,所述方法还包括:
在检测到所述目标软件新增功能的情况下,确定与所述目标软件新增的功能相匹配的新增测试案例;其中,所述新增测试案例用于测试所述目标软件新增的功能;
将所述新增测试案例添加至所述测试案例数据库中。
一个示例中,所述基于所述软件测试类型,从测试案例数据库中获取所述目标测试案例,包括:
若所述软件测试类型表征对所述目标软件进行全量测试,则将所述测试案例数据库中的全部测试案例,确定为所述目标测试案例;
若所述软件测试类型表征不对所述目标软件进行全量测试,则将所述测试案例数据库中的新增测试案例,确定为所述目标测试案例。
一个示例中,将所述第一目标数据包与所述目标测试案例中的第三预设数据包进行对比处理,并将所述第二目标数据包与所述目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果,包括:
确定所述第三预设数据包和所述第四预设数据包中,各个字段的字段对比要求;其中,所述字段对比要求表征进行对比的字段是否需要保持一致;
基于所述字段对比要求,将所述第一目标数据包中的各个字段与所述第三预设数据包中的相对应字段进行对比处理,并将所述第二目标数据包中的各个字段与所述第四预设数据包中的相对应字段进行对比处理,得到所述数据对比结果;其中,所述数据对比结果表征各个字段的字段对比结果。
一个示例中,在得到数据对比结果之后,所述方法还包括:
将所述数据对比结果发送至终端设备,并在所述终端设备的显示界面中展示所述数据对比结果。
一个示例中,在所述终端设备的显示界面中所述数据对比结果,包括:
若所述数据对比结果表征所述目标软件测试不通过,则在所述终端设备的显示界面中按照预设的异常结果展示样式,展示所述数据对比结果。
第二方面,本申请提供一种软件的测试装置,包括:
获取单元,用于响应于对目标软件的软件测试指令,获取目标测试案例;其中,所述软件测试指令表征对所述目标软件进行测试;所述目标测试案例表征所述目标软件测试时的执行数据;
第一执行单元,用于将所述目标测试案例中的第一预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第一预设数据包之后,得到的第一目标数据包;其中,所述第一预设数据包指示预先设置的由所述目标软件的前端发送至所述目标软件的执行数据;
第二执行单元,用于将所述目标测试案例中的第二预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第二预设数据包之后,得到的第二目标数据包;其中,所述第二预设数据包指示预先设置的由所述目标软件的后端发送至所述目标软件的执行数据;
对比单元,用于将所述第一目标数据包与所述目标测试案例中的第三预设数据包进行对比处理,并将所述第二目标数据包与所述目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果;其中,所述第三预设数据包表征预先设置的所述目标软件执行所述第一预设数据包之后得到的执行数据;所述第四预设数据包表征预先设置的所述目标软件执行所述第二预设数据包之后得到的执行数据;所述数据对比结果表征所述目标软件是否测试通过。
一个示例中,获取单元,用于:
响应于对所述目标软件的软件测试指令,确定所述软件测试指令对应的软件测试类型;其中,所述软件测试类型表征是否对所述目标软件进行回归测试;
基于所述软件测试类型,从测试案例数据库中获取所述目标测试案例;其中,所述测试案例数据库中包括测试所述目标软件的全部测试案例。
一个示例中,该装置还包括:
测试案例更新模块,用于:在响应于对目标软件的软件测试指令,获取目标测试案例之前,在检测到所述目标软件新增功能的情况下,确定与所述目标软件新增的功能相匹配的新增测试案例;其中,所述新增测试案例用于测试所述目标软件新增的功能;
将所述新增测试案例添加至所述测试案例数据库中。
一个示例中,获取单元,用于:
若所述软件测试类型表征对所述目标软件进行全量测试,则将所述测试案例数据库中的全部测试案例,确定为所述目标测试案例;
若所述软件测试类型表征不对所述目标软件进行全量测试,则将所述测试案例数据库中的新增测试案例,确定为所述目标测试案例。
一个示例中,对比单元,用于:
确定所述第三预设数据包和所述第四预设数据包中,各个字段的字段对比要求;其中,所述字段对比要求表征进行对比的字段是否需要保持一致;
基于所述字段对比要求,将所述第一目标数据包中的各个字段与所述第三预设数据包中的相对应字段进行对比处理,并将所述第二目标数据包中的各个字段与所述第四预设数据包中的相对应字段进行对比处理,得到所述数据对比结果;其中,所述数据对比结果表征各个字段的字段对比结果。
一个示例中,该装置还包括:
展示模块,用于:在得到数据对比结果之后,将所述数据对比结果发送至终端设备,并在所述终端设备的显示界面中展示所述数据对比结果。
一个示例中,展示模块,用于:
若所述数据对比结果表征所述目标软件测试不通过,则在所述终端设备的显示界面中按照预设的异常结果展示样式,展示所述数据对比结果。
第三方面,本申请提供一种计算机设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现第一方面所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面所述的方法。
第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括:计算机执行指令,所述计算机执行指令存储在可读存储介质中,计算机设备的至少一个处理器可以从所述可读存储介质读取所述计算机执行指令,所述至少一个处理器执行所述计算机执行指令,使得计算机设备执行第一方面所述的方法。
本申请提供的软件的测试方法、装置以及设备,可以响应于对目标软件的软件测试指令,获取对应的目标测试案例,并基于该目标测试案例对目标软件进行测试,可以提高软件的测试效率。其中,目标测试案例中包括预先设置的,目标软件的前端发送至目标软件的第一预设数据包、目标软件的后端发送至目标软件的第二预设数据包、目标软件执行该第一预设数据包之后得到的第三预设数据包、目标软件执行该第二预设数据包之后得到的第四预设数据包。此时,可以依托于目标软件的前后端系统,来设置目标测试案例,从而可以使目标软件的测试更加贴合真实的生产环境,进而可以有效保证目标软件测试的有效性和可靠性。此时,在对目标软件进行测试的情况下,可以将第一预设数据包和第二预设数据包分别输入至目标软件,可以得到执行第一预设数据包之后的第一目标数据包,以及执行第二预设数据包之后的第二目标数据包,之后,可以自动的将第一目标数据包与第三预设数据包进行对比处理,并将第二目标数据包与第四预设数据包进行对比处理,得到数据对比结果,不仅加快了软件测试进程,还可以从目标软件处理的前端数据和后端数据两个层面出发,对目标软件进行测试,可以使目标软件的测试更加全面、准确。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种软件的测试方法的流程示意图;
图2为本申请实施例提供的另一种软件的测试方法的流程示意图;
图3为本申请实施例提供的一种软件的测试系统的示意图;
图4为本申请实施例提供的一种软件的测试装置的结构示意图;
图5为本申请实施例提供的另一种软件的测试装置的结构示意图;
图6为本申请实施例提供的一种计算机设备的结构示意图;
图7是根据一示例性实施例示出的一种计算机设备的框图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。其中,本申请涉及的用户信息和数据可以理解为用于对软件进行测试时,软件对应的执行数据,这里对该用户信息和数据的具体内容不作限定。
需要说明的是,本申请实施例提供的软件的测试方法、装置以及设备可用于人工智能技术领域,也可用于计算机技术领域,也可用于金融技术领域,也可以用于除上述技术领域之外的任意需要进行测试的领域,这里对本申请实施例提供的软件的测试方法、装置洗以及设备的应用领域不做限定。
随着计算机技术的发展,软件更新迭代的速度也越来越快,相关技术中,在对更新迭代的软件进行测试时,主要是针对软件本次的更新迭代内容,来编写对应的测试案例,并将该测试案例发送至软件。之后,可以通过人工检查软件在执行该测试案例之后得到的测试结果是否异常,来判断软件是否测试通过。
这种测试方式,只能从软件本身出发,针对软件本次的更新迭代内容(例如,新增的功能),来编写测试案例进行测试,导致软件测试的测试层面较为单一,无法保证软件在实际应用场景下的有效性和准确性。同时,通过人工检查测试结果是否异常,加大了工作人员的工作量,耗费了较多的人力成本和时间成本。
除此之外,当软件新增的功能,与软件原有的功能具有一定耦合性时,就需要对软件进行回归测试,这种情况下,编写用于回归测试的测试案例的任务量较大,不仅增大了工作人员的工作压力,还影响了软件的测试效率。
因此,如何自动、高效、准确的对软件进行回归测试以及新增功能的测试成为亟需解决的问题。
本申请提供的软件的测试方法,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图1为本申请实施例提供的一种软件的测试方法的流程示意图,如图1所示,该方法包括:
S101、响应于对目标软件的软件测试指令,获取目标测试案例。
其中,软件测试指令表征对目标软件进行测试;目标测试案例表征目标软件测试时的执行数据。
一个示例中,对目标软件的软件测试指令可以为全量测试指令,也可以为增量测试指令,其中,全量测试指令表征对目标软件进行回归测试,增量测试指令表征对目标软件进行增量测试,其中,增量测试表征对目标软件的新增的功能进行测试。
一个示例中,目标测试案例的数量可以为多个,那么,在目标测试案例为多个的情况下,可以为每个目标测试案例设置对应的案例标识,从而可以基于该案例标识区分各目标测试案例中的执行数据。
S102、将目标测试案例中的第一预设数据包,发送至目标软件,并获取目标软件执行第一预设数据包之后,得到的第一目标数据包。
其中,第一预设数据包指示预先设置的由目标软件的前端发送至目标软件的执行数据。
一个示例中,目标软件的前端表征在实际业务场景中,与目标软件相关联的上一级系统,此时,可以根据上一级系统发送给目标软件的执行数据,预先设置第一预设数据包,并将该第一预设数据包发送至目标软件,以使目标软件执行该第一预设数据包,得到第一目标数据包。
一个示例中,可以将目标软件的前端在实际业务场景中的输出数据,作为第一预设数据包,也可以模仿目标软件的前端在实际业务场景中的输出数据,得到第一预设数据等。
S103、将目标测试案例中的第二预设数据包,发送至目标软件,并获取目标软件执行第二预设数据包之后,得到的第二目标数据包。
其中,第二预设数据包指示预先设置的由目标软件的后端发送至目标软件的执行数据。
一个示例中,目标软件的后端表征在实际业务场景中,与目标软件相关联的下一级系统,此时,可以根据下一级系统发送给目标软件的执行数据,预先设置第二预设数据包,并将该第二预设数据包发送至目标软件,以使目标软件执行该第二预设数据包,得到第二目标数据包。
一个示例中,可以将目标软件的后端在实际业务场景中发送给目标软件的数据,作为第二预设数据包,也可以模仿目标软件的后端在实际业务场景中发送给目标软件的数据,得到第二预设数据等。
本申请实施例对上述第一预设数据包和第二预设数据包不作具体限定,以能够贴合目标软件所对应的实际业务场景为准。
S104、将第一目标数据包与目标测试案例中的第三预设数据包进行对比处理,并将第二目标数据包与目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果。
其中,第三预设数据包表征预先设置的目标软件执行第一预设数据包之后得到的执行数据;第四预设数据包表征预先设置的目标软件执行第二预设数据包之后得到的执行数据;数据对比结果表征目标软件是否测试通过。
一个示例中,数据对比结果可以包括第一目标数据包与第三预设数据包进行对比处理,得到的第一对比结果,以及第二目标数据包与第四预设数据包进行对比处理,得到的第二对比结果。
将第一对比结果和第二对比结果汇总后,可以得到上述数据对比结果。
通过上述描述可知,本申请实施例,可以响应于对目标软件的软件测试指令,获取对应的目标测试案例,并基于该目标测试案例对目标软件进行测试,可以提高软件的测试效率。其中,目标测试案例中包括预先设置的,目标软件的前端发送至目标软件的第一预设数据包、目标软件的后端发送至目标软件的第二预设数据包、目标软件执行该第一预设数据包之后得到的第三预设数据包、目标软件执行该第二预设数据包之后得到的第四预设数据包。此时,可以依托于目标软件的前后端系统,来设置目标测试案例,从而可以使目标软件的测试更加贴合真实的生产环境,进而可以有效保证目标软件测试的有效性和可靠性。
此时,在对目标软件进行测试的情况下,可以将第一预设数据包和第二预设数据包分别输入至目标软件,可以得到执行第一预设数据包之后的第一目标数据包,以及执行第二预设数据包之后的第二目标数据包,之后,可以自动的将第一目标数据包与第三预设数据包进行对比处理,并将第二目标数据包与第四预设数据包进行对比处理,得到数据对比结果,不仅加快了软件测试进程,还可以从目标软件处理的前端数据和后端数据两个层面出发,对目标软件进行测试,可以使目标软件的测试更加全面、准确。
图2为本申请实施例提供的另一种软件的测试方法的流程示意图,如图2所示,该方法包括:
S201、响应于对目标软件的软件测试指令,确定软件测试指令对应的软件测试类型。
其中,软件测试指令指示对目标软件进行测试,软件测试类型表征是否对目标软件进行回归测试。
一个示例中,在软件测试指令为全量测试指令的情况下,则软件测试指令对应的软件测试类型为回归测试,此时,可以对目标软件进行回归测试;在软件测试指令为增量测试指令的情况下,则软件测试指令对应的软件测试类型为增量测试,此时,可以对目标软件进行增量测试。
此时,可以通过确定软件测试指令对应的软件测试类型,来确定是否对软件进行回归测试,从而为软件测试提供更多选择,使软件的测试更加灵活多样,避免进行大量无用的测试,不仅浪费时间,还影响测试效率。
S202、基于软件测试类型,从测试案例数据库中获取目标测试案例。
其中,测试案例数据库中包括测试目标软件的全部测试案例,目标测试案例表征目标软件测试时的执行数据。
一个示例中,测试案例数据库中可以包括对目标软件进行第一次测试开始至今的全部测试案例。基于此,在响应于对目标软件的软件测试指令,获取目标测试案例之前,在检测到目标软件新增功能的情况下,确定与目标软件新增的功能相匹配的新增测试案例,并将新增测试案例添加至测试案例数据库中。其中,新增测试案例用于测试目标软件新增的功能。
具体实施时,测试人员需要根据目标软件此次新增的功能,设计目标软件的前端发送至目标软件的第一预设数据包、设计目标软件执行该第一预设数据包之后期望得到的第三预设数据包、设计目标软件的后端发送至目标软件的第二预设数据包、设计目标软件执行该第一预设数据包之后期望得到的第四预设数据包,并基于这四个预设数据包,得到新增测试案例。此时,可以为每个新增测试案例设置对应的案例标识。
同时,在将新增测试案例添加至测试案例数据库之后,可以为该新增测试案例添加新增标签,从而可以更好的区分新增测试案例和历史测试案例。
一个示例中,在新增测试案例与历史测试案例存在冲突的情况下,则可以删除冲突的历史测试案例,或者,可以保留该冲突的历史测试案例,并设置该冲突的历史测试案例为不使用状态。
这种实施方式,可以及时更新用于测试软件的测试案例数据库,以构建针对软件的全生命周期内测试案例数据库,此时,就可以基于该测试案例数据库,对软件进行测试处理,使软件的测试更加便捷、高效。
基于此,在基于软件测试类型,从测试案例数据库中获取目标测试案例的情况下,若软件测试类型表征对目标软件进行全量测试,则将测试案例数据库中的全部测试案例,确定为目标测试案例;若软件测试类型表征不对目标软件进行全量测试,则将测试案例数据库中的新增测试案例,确定为目标测试案例。
这种实施方式,可以基于软件测试类型,从测试案例数据库中选择,与当前的软件测试指令更加匹配的目标测试案例,可以使软件的测试更能匹配测试人员的实际需求。
S203、将目标测试案例中的第一预设数据包,发送至目标软件,并获取目标软件执行第一预设数据包之后,得到的第一目标数据包。
其中,第一预设数据包指示预先设置的由目标软件的前端发送至目标软件的执行数据。
S204、将第一目标数据包与目标测试案例中的第三预设数据包进行对比处理,得到第一对比结果。
其中,第三预设数据包表征预先设置的目标软件执行第一预设数据包之后得到的执行数据,第一对比结果表征第一目标数据包中的各字段的字段内容与第三预设数据包中的各字段的字段内容是否一致。
具体实施时,可以确定第三预设数据包中,各个字段的字段对比要求,并基于字段对比要求,将第一目标数据包中的各个字段与第三预设数据包中的相对应字段进行对比处理,得到第一对比结果。
其中,第一字段对比结果中包括第三预设数据包中,各个字段的字段对比结果。
其中,字段对比要求表征进行对比的字段是否需要保持一致。例如,字段对比要求可以为:字段A必须一致,字段B可以不一致,字段C部分一致,且该一致的内容为D等。这里对字段对比要求不作具体限定,以满足实际需要为准。
S205、将目标测试案例中的第二预设数据包,发送至目标软件,并获取目标软件执行第二预设数据包之后,得到的第二目标数据包。
其中,第二预设数据包指示预先设置的由目标软件的后端发送至目标软件的执行数据。
S206、将第二目标数据包与目标测试案例中的第四预设数据包进行对比处理,得到第二对比结果。
其中,第四预设数据包表征预先设置的目标软件执行第二预设数据包之后得到的执行数据,第二对比结果表征第二目标数据包中的各字段的字段内容与第四预设数据包中的各字段的字段内容是否一致。
具体实施时,可以确定第四预设数据包中,各个字段的字段对比要求,并基于字段对比要求,将第二目标数据包中的各个字段与第四预设数据包中的相对应字段进行对比处理,得到第二对比结果。
其中,第二字段对比结果中包括第四预设数据包中,各个字段的字段对比结果。
其中,字段对比要求表征进行对比的字段是否需要保持一致,例如,字段对比要求可以为:字段1必须不一致,字段2必须一致,字段3可以不一致等。这里对字段对比要求不作具体限定,以满足实际需要为准。
一个示例中,针对第三预设数据包以及第四预设数据包中的各个字段的字段对比要求,可以存放于同一个数据表中,也可以存放于不同的数据表中。
上述实施方式中,可以通过设置字段对比要求,细化软件的测试过程,进而可以提高软件测试的准确度。
S207、基于第一对比结果和第二对比结果,得到数据对比结果。
其中,数据对比结果表征目标软件是否测试通过。
一个示例中,数据对比结果可以包括第一对比结果和第二对比结果的详细内容,也可以只包括第一对比结果和第二对比结果中,不满足字段对比要求的字段对比结果,这里对数据对比结果所包含的内容不作具体限定。
S208、将数据对比结果发送至终端设备,并在终端设备的显示界面中展示数据对比结果。
这种实施方式,可以在与第三预设数据包以及第四预设数据包中的各个字段进行对比之后,可以展示得到的数据对比结果,可以使数据对比结果一目了然,便于测试人员对数据对比结果进行分析处理,以更快、更好的调试软件,加快软件的测试进程,使软件尽快上线,节省了时间和成本。
S209、若数据对比结果表征目标软件测试不通过,则在终端设备的显示界面中按照预设的异常结果展示样式,展示数据对比结果。
一个示例中,可以将数据对比结果中的对比异常结果(也即,不满足字段对比要求的字段对比结果),按照预设的异常结果展示样式,展示在终端设备的展示界面中。
一个示例中,预设的异常结果展示样式可以指示对比异常结果的展示位置和展示颜色,例如,该预设的异常结果展示样式可以为优先展示该对比异常结果,和/或,将对比异常结果标黄后展示等。
一个示例中,在目标测试案例为多个,得到多个数据对比结果的情况下,则可以将每个目标测试案例对应的数据对比结果折叠展示,例如,可以优先展示折叠后的表征目标软件测试不通过的数据对比结果,也可以只展示折叠后的表征目标软件测试不通过的数据对比结果。
上述实施方式中,可以按照预设的异常结果展示样式,展示表征目标软件测试不通过的数据对比结果,可以简化测试人员查看,表征目标软件测试不通过的数据对比结果的操作,提升测试人员的查看体验,提高效率。
图3为本申请实施例提供的一种软件的测试系统的示意图,如图3所示,该系统300,包括:
数据导入模块301,用于提供测试案例模板,并在检测到预先设置的软件的执行数据,导入测试案例模板,生成测试案例后,将生成的测试案例导入测试案例数据库中。
数据提取模块302,用于在软件测试时,根据软件测试指令获取目标测试案例,并提取目标测试案例中的四个预设数据包。
数据处理模块303,用于向目标软件发送第一预设数据包;以及获取第一目标数据包;以及对比第一目标数据包和第三预设数据包;以及向目标软件发送第二预设数据包;以及对比第二目标数据包和第四预设数据包,得到数据对比结果。
结果输出模块304,用于输出数据对比结果,并展示。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
图4为本申请实施例提供的一种软件的测试装置的结构示意图,如图4所示,该软件的测试装置400包括:
获取单元401,用于响应于对目标软件的软件测试指令,获取目标测试案例;其中,软件测试指令表征对目标软件进行测试;目标测试案例表征目标软件测试时的执行数据。
第一执行单元402,用于将目标测试案例中的第一预设数据包,发送至目标软件,并获取目标软件执行第一预设数据包之后,得到的第一目标数据包;其中,第一预设数据包指示预先设置的由目标软件的前端发送至目标软件的执行数据。
第二执行单元403,用于将目标测试案例中的第二预设数据包,发送至目标软件,并获取目标软件执行第二预设数据包之后,得到的第二目标数据包;其中,第二预设数据包指示预先设置的由目标软件的后端发送至目标软件的执行数据。
对比单元404,用于将第一目标数据包与目标测试案例中的第三预设数据包进行对比处理,并将第二目标数据包与目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果;其中,第三预设数据包表征预先设置的目标软件执行第一预设数据包之后得到的执行数据;第四预设数据包表征预先设置的目标软件执行第二预设数据包之后得到的执行数据;数据对比结果表征目标软件是否测试通过。
图5为本申请实施例提供的另一种软件的测试装置的结构示意图,如图5所示,该软件的测试装置500包括:
获取单元501,用于响应于对目标软件的软件测试指令,获取目标测试案例;其中,软件测试指令表征对目标软件进行测试;目标测试案例表征目标软件测试时的执行数据。
第一执行单元502,用于将目标测试案例中的第一预设数据包,发送至目标软件,并获取目标软件执行第一预设数据包之后,得到的第一目标数据包;其中,第一预设数据包指示预先设置的由目标软件的前端发送至目标软件的执行数据。
第二执行单元503,用于将目标测试案例中的第二预设数据包,发送至目标软件,并获取目标软件执行第二预设数据包之后,得到的第二目标数据包;其中,第二预设数据包指示预先设置的由目标软件的后端发送至目标软件的执行数据。
对比单元504,用于将第一目标数据包与目标测试案例中的第三预设数据包进行对比处理,并将第二目标数据包与目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果;其中,第三预设数据包表征预先设置的目标软件执行第一预设数据包之后得到的执行数据;第四预设数据包表征预先设置的目标软件执行第二预设数据包之后得到的执行数据;数据对比结果表征目标软件是否测试通过。
一个示例中,获取单元501,用于:
响应于对目标软件的软件测试指令,确定软件测试指令对应的软件测试类型;其中,软件测试类型表征是否对目标软件进行回归测试;
基于软件测试类型,从测试案例数据库中获取目标测试案例;其中,测试案例数据库中包括测试目标软件的全部测试案例。
一个示例中,该装置还包括:
测试案例更新模块505,用于在响应于对目标软件的软件测试指令,获取目标测试案例之前,在检测到目标软件新增功能的情况下,确定与目标软件新增的功能相匹配的新增测试案例;其中,新增测试案例用于测试目标软件新增的功能;
将新增测试案例添加至测试案例数据库中。
一个示例中,获取单元501,用于:
若软件测试类型表征对目标软件进行全量测试,则将测试案例数据库中的全部测试案例,确定为目标测试案例;
若软件测试类型表征不对目标软件进行全量测试,则将测试案例数据库中的新增测试案例,确定为目标测试案例。
一个示例中,对比单元504,用于:
确定第三预设数据包和第四预设数据包中,各个字段的字段对比要求;其中,字段对比要求表征进行对比的字段是否需要保持一致;
基于字段对比要求,将第一目标数据包中的各个字段与第三预设数据包中的相对应字段进行对比处理,并将第二目标数据包中的各个字段与第四预设数据包中的相对应字段进行对比处理,得到数据对比结果;其中,数据对比结果表征各个字段的字段对比结果。
一个示例中,该装置还包括:
展示模块506,用于在得到数据对比结果之后,将数据对比结果发送至终端设备,并在终端设备的显示界面中展示数据对比结果。
一个示例中,展示模块506,用于:
若数据对比结果表征目标软件测试不通过,则在终端设备的显示界面中按照预设的异常结果展示样式,展示数据对比结果。
图6为本申请实施例提供的一种计算机设备的结构示意图,如图6所示,计算机设备600包括:存储器601,处理器602。
存储器601;用于存储处理器602可执行指令的存储器。
其中,处理器602被配置为执行如上述实施例提供的方法。
计算机设备还包括接收器603和发送器604。接收器603用于接收外部设备发送的指令和数据,发送器604用于向外部设备发送指令和数据。
图7是根据一示例性实施例示出的一种计算机设备的框图,该设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
装置700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)接口712,传感器组件714,以及通信组件716。
处理组件702通常控制装置700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在装置700的操作。这些数据的示例包括用于在装置700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为装置700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为装置700生成、管理和分配电力相关联的组件。
多媒体组件708包括在装置700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当装置700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当装置700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为装置700提供各个方面的状态评估。例如,传感器组件714可以检测到装置700的打开/关闭状态,组件的相对定位,例如组件为装置700的显示器和小键盘,传感器组件714还可以检测装置700或装置700一个组件的位置改变,用户与装置700接触的存在或不存在,装置700方位或加速/减速和装置700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于装置700和其他设备之间有线或无线方式的通信。装置700可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机执行指令,该计算机执行指令被处理器运行时执行上述方法实施例中的软件的测试方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本申请实施例还提供一种计算机程序产品,该计算机程序产品承载有计算机执行指令,计算机执行指令包括的指令可用于执行上述方法实施例中的软件的测试方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (10)

1.一种软件的测试方法,其特征在于,包括:
响应于对目标软件的软件测试指令,获取目标测试案例;其中,所述软件测试指令表征对所述目标软件进行测试;所述目标测试案例表征所述目标软件测试时的执行数据;
将所述目标测试案例中的第一预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第一预设数据包之后,得到的第一目标数据包;其中,所述第一预设数据包指示预先设置的由所述目标软件的前端发送至所述目标软件的执行数据;
将所述目标测试案例中的第二预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第二预设数据包之后,得到的第二目标数据包;其中,所述第二预设数据包指示预先设置的由所述目标软件的后端发送至所述目标软件的执行数据;
将所述第一目标数据包与所述目标测试案例中的第三预设数据包进行对比处理,并将所述第二目标数据包与所述目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果;其中,所述第三预设数据包表征预先设置的所述目标软件执行所述第一预设数据包之后得到的执行数据;所述第四预设数据包表征预先设置的所述目标软件执行所述第二预设数据包之后得到的执行数据;所述数据对比结果表征所述目标软件是否测试通过。
2.根据权利要求1所述的方法,其特征在于,所述响应于对目标软件的软件测试指令,获取目标测试案例,包括:
响应于对所述目标软件的软件测试指令,确定所述软件测试指令对应的软件测试类型;其中,所述软件测试类型表征是否对所述目标软件进行回归测试;
基于所述软件测试类型,从测试案例数据库中获取所述目标测试案例;其中,所述测试案例数据库中包括测试所述目标软件的全部测试案例。
3.根据权利要求2所述的方法,其特征在于,在响应于对目标软件的软件测试指令,获取目标测试案例之前,所述方法还包括:
在检测到所述目标软件新增功能的情况下,确定与所述目标软件新增的功能相匹配的新增测试案例;其中,所述新增测试案例用于测试所述目标软件新增的功能;
将所述新增测试案例添加至所述测试案例数据库中。
4.根据权利要求3所述的方法,其特征在于,所述基于所述软件测试类型,从测试案例数据库中获取所述目标测试案例,包括:
若所述软件测试类型表征对所述目标软件进行全量测试,则将所述测试案例数据库中的全部测试案例,确定为所述目标测试案例;
若所述软件测试类型表征不对所述目标软件进行全量测试,则将所述测试案例数据库中的新增测试案例,确定为所述目标测试案例。
5.根据权利要求1-4中任一项所述的方法,其特征在于,将所述第一目标数据包与所述目标测试案例中的第三预设数据包进行对比处理,并将所述第二目标数据包与所述目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果,包括:
确定所述第三预设数据包和所述第四预设数据包中,各个字段的字段对比要求;其中,所述字段对比要求表征进行对比的字段是否需要保持一致;
基于所述字段对比要求,将所述第一目标数据包中的各个字段与所述第三预设数据包中的相对应字段进行对比处理,并将所述第二目标数据包中的各个字段与所述第四预设数据包中的相对应字段进行对比处理,得到所述数据对比结果;其中,所述数据对比结果表征各个字段的字段对比结果。
6.根据权利要求1所述的方法,其特征在于,在得到数据对比结果之后,所述方法还包括:
将所述数据对比结果发送至终端设备,并在所述终端设备的显示界面中展示所述数据对比结果。
7.根据权利要求6所述的方法,其特征在于,在所述终端设备的显示界面中展示所述数据对比结果,包括:
若所述数据对比结果表征所述目标软件测试不通过,则在所述终端设备的显示界面中按照预设的异常结果展示样式,展示所述数据对比结果。
8.一种软件的测试装置,其特征在于,包括:
获取单元,用于响应于对目标软件的软件测试指令,获取目标测试案例;其中,所述软件测试指令表征对所述目标软件进行测试;所述目标测试案例表征所述目标软件测试时的执行数据;
第一执行单元,用于将所述目标测试案例中的第一预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第一预设数据包之后,得到的第一目标数据包;其中,所述第一预设数据包指示预先设置的由所述目标软件的前端发送至所述目标软件的执行数据;
第二执行单元,用于将所述目标测试案例中的第二预设数据包,发送至所述目标软件,并获取所述目标软件执行所述第二预设数据包之后,得到的第二目标数据包;其中,所述第二预设数据包指示预先设置的由所述目标软件的后端发送至所述目标软件的执行数据;
对比单元,用于将所述第一目标数据包与所述目标测试案例中的第三预设数据包进行对比处理,并将所述第二目标数据包与所述目标测试案例中的第四预设数据包进行对比处理,得到数据对比结果;其中,所述第三预设数据包表征预先设置的所述目标软件执行所述第一预设数据包之后得到的执行数据;所述第四预设数据包表征预先设置的所述目标软件执行所述第二预设数据包之后得到的执行数据;所述数据对比结果表征所述目标软件是否测试通过。
9.一种计算机设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7中任一项所述的软件的测试方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7中任一项所述的软件的测试方法。
CN202311230045.3A 2023-09-22 2023-09-22 软件的测试方法、装置以及设备 Pending CN117093500A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311230045.3A CN117093500A (zh) 2023-09-22 2023-09-22 软件的测试方法、装置以及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311230045.3A CN117093500A (zh) 2023-09-22 2023-09-22 软件的测试方法、装置以及设备

Publications (1)

Publication Number Publication Date
CN117093500A true CN117093500A (zh) 2023-11-21

Family

ID=88773605

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311230045.3A Pending CN117093500A (zh) 2023-09-22 2023-09-22 软件的测试方法、装置以及设备

Country Status (1)

Country Link
CN (1) CN117093500A (zh)

Similar Documents

Publication Publication Date Title
CN110941942B (zh) 电路原理图检查方法、装置及系统
CN105488112A (zh) 信息推送方法及装置
CN111221733B (zh) 信息处理方法、装置、移动终端及存储介质
CN112241361A (zh) 测试用例生成方法及装置、问题场景自动复现方法及装置
CN111158748A (zh) 信息获取方法及装置、存储介质
CN114218005A (zh) 设备故障检测修复处理方法、装置及设备
CN112416751A (zh) 接口自动化测试的处理方法、装置及存储介质
CN112383661B (zh) 移动端自动化测试方法、装置、电子设备及存储介质
CN110213062A (zh) 处理消息的方法及装置
CN111240927B (zh) 检测程序中方法耗时的方法、装置及存储介质
CN115098390A (zh) 自动化测试方法、装置、存储介质和电子设备
CN117093500A (zh) 软件的测试方法、装置以及设备
CN113810240B (zh) 通讯协议解析方法、装置及计算机可读存储介质
CN106533841A (zh) 用户识别模块卡的协议一致性测试方法、装置及系统
CN106027760A (zh) 信息反馈方法及装置
CN107526683B (zh) 应用程序功能冗余度的检测方法、装置及存储介质
CN110708427A (zh) 信息处理方法、装置及存储介质
CN116719726A (zh) 记录单的上传方法、装置、设备及存储介质
CN114416085B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN112733141B (zh) 一种信息处理方法及装置
CN113191792B (zh) 任务的处理方法、装置、电子设备、存储介质和程序产品
CN113946346B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN117093486A (zh) 接口测试方法、装置、设备及存储介质
CN117097760A (zh) 基于票据交易的报文处理方法、装置、设备及存储介质
CN117149742A (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