CN110162463A - 基于自动化测试工具的软件测试方法、装置及电子设备 - Google Patents
基于自动化测试工具的软件测试方法、装置及电子设备 Download PDFInfo
- Publication number
- CN110162463A CN110162463A CN201910317827.8A CN201910317827A CN110162463A CN 110162463 A CN110162463 A CN 110162463A CN 201910317827 A CN201910317827 A CN 201910317827A CN 110162463 A CN110162463 A CN 110162463A
- Authority
- CN
- China
- Prior art keywords
- test
- target
- field
- software
- tested
- 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
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
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是根据另一示例性实施例示出的一种基于自动化测试工具的软件测试装置的框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
本发明的实施环境可以是电子设备,例如电脑、服务器等。
图1是根据一示例性实施例示出的一种装置的示意图。装置100可以是上述便携移动设备。如图1所示,装置100可以包括以下一个或多个组件:处理组件102,存储器104,电源组件106,多媒体组件108,音频组件110,传感器组件114以及通信组件116。
处理组件102通常控制装置100的整体操作,诸如与显示,电话呼叫,数据通信,相机操作以及记录操作相关联的操作等。处理组件102可以包括一个或多个处理器118来执行指令,以完成下述的方法的全部或部分步骤。此外,处理组件102可以包括一个或多个模块,用于便于处理组件102和其他组件之间的交互。例如,处理组件102可以包括多媒体模块,用于以方便多媒体组件108和处理组件102之间的交互。
存储器104被配置为存储各种类型的数据以支持在装置100的操作。这些数据的示例包括用于在装置100上操作的任何应用程序或方法的指令。存储器104可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static RandomAccess Memory,简称SRAM),电可擦除可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储器104中还存储有一个或多个模块,用于该一个或多个模块被配置成由该一个或多个处理器118执行,以完成如下所示方法中的全部或者部分步骤。
电源组件106为装置100的各种组件提供电力。电源组件106可以包括电源管理系统,一个或多个电源,及其他与为装置100生成、管理和分配电力相关联的组件。
多媒体组件108包括在所述装置100和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,简称LCD)和触摸面板。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。屏幕还可以包括有机电致发光显示器(Organic Light Emitting Display,简称OLED)。
音频组件110被配置为输出和/或输入音频信号。例如,音频组件110包括一个麦克风(Microphone,简称MIC),当装置100处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器104或经由通信组件116发送。在一些实施例中,音频组件110还包括一个扬声器,用于输出音频信号。
传感器组件114包括一个或多个传感器,用于为装置100提供各个方面的状态评估。例如,传感器组件114可以检测到装置100的打开/关闭状态,组件的相对定位,传感器组件114还可以检测装置100或装置100一个组件的位置改变以及装置100的温度变化。在一些实施例中,该传感器组件114还可以包括磁传感器,压力传感器或温度传感器。
通信组件116被配置为便于装置100和其他设备之间有线或无线方式的通信。装置100可以接入基于通信标准的无线网络,如WiFi(Wireless-Fidelity,无线保真)。在一个示例性实施例中,通信组件116经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件116还包括近场通信(Near FieldCommunication,简称NFC)模块,用于以促进短程通信。例如,在NFC模块可基于射频识别(Radio Frequency Identification,简称RFID)技术,红外数据协会(Infrared DataAssociation,简称IrDA)技术,超宽带(Ultra Wideband,简称UWB)技术,蓝牙技术和其他技术来实现。
在示例性实施例中,装置100可以被一个或多个应用专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、数字信号处理器、数字信号处理设备、可编程逻辑器件、现场可编程门阵列、控制器、微控制器、微处理器或其他电子元件实现,用于执行下述方法。
图2是根据一示例性实施例示出的一种基于自动化测试工具的软件测试方法的流程图。如图2所示,此方法包括以下步骤。
步骤201,通过待测试软件的接口获取待测试软件包含的目标待测试函数,并进一步获取目标待测试函数的测试数据信息,测试数据信息中至少包含测试字段以及各个测试字段的参数。
本发明实施例中,待测试软件可以为当前需要测试的软件,待测试软件中可以包含若干个函数,在软件测试过程中一次可以对一个函数进行测试,因此可以从待测试软件中确定一个目标待测试函数。在对目标待测试函数进行测试的过程中,需要向目标待测试函数输入测试数据,由于向目标待测试函数输入的测试数据通常拥有标准的数据格式,因此可以预先获取到目标待测试函数的测试数据信息。
本发明实施例中,向目标待测试函数中输入的数据可以包含一个或多个字段,且每个字段的参数也可以为一个或多个,字段的参数可以为字段的类型、边界值、长度等对此,本发明实施例不做限定。基于此,本实施例预先获取的测试数据信息至少包括测试字段数量以及各个测试字段的参数。
举例而言,输入的数据可包括三个字段,每个字段的参数可以包括字段类型、字段长度以及字段范围等。如第一个字段的字段类型可以为数字、字段长度可以为三位数至六位数、且字段范围可以为000~999999;第二个字段的字段类型可以为英文字符、字段长度可以为三个英文字符至六个英文字符、且字段范围可以为26个英文字符中任意三个至六个英文字符随机排列组合的任意英文字符串;第三个字段的字段类型可以为汉字字符、字段长度可以为两个汉字字符至四个汉字字符、且字段范围可以为任意两个至四个汉字字符随机排列组合的任意汉字字符串。
步骤202,生成与测试数据信息匹配的目标测试数据。
本发明实施例中,可以依据测试要求生成与测试数据信息中包含的某些字段的参数匹配的目标测试数据,也可以生成与测试数据信息中包含的某些字段的参数不匹配的目标测试数据。
本发明实施例中,可以根据当前软件测试的类型确定目标测试数据与测试数据信息的匹配方式;当前软件测试的类型至少可以包括必传性测试、边界值校验以及字段类型测试等。当当前的软件测试类型为必传性测试时,可以先在测试数据信息中确定需要测试的目标字段,并将该目标字段设置为空字段,以及生成除该目标字段之外的字段对应的正常测试字段,且生成的测试字段与测试数据信息中的参数匹配,最后,结合空字段与正常测试字段生成目标测试数据;当当前的软件测试类型为边界值校验时,可以先在测试数据信息中确定需要测试的目标字段,并获取该目标字段对应的边界值(如果该目标字段存在两个边界值,则可以对该字段进行两次边界值校验),根据获取到的边界值确定该目标字段对应的目标测试字段,并且生成除该目标字段之外的字段对应的正常测试字段,且生成的正常测试字段与测试数据信息中的参数匹配,最后,结合目标测试字段与正常测试字段生成目标测试数据;当当前的软件测试类型为字段类型测试时,可以先在测试数据信息中确定需要测试的目标字段,并获取该目标字段对应的字段类型,以及生成与该目标字段的字段类型不匹配的目标测试字段,此外,还可以生成除该目标字段之外的字段对应的正常测试字段,且生成的正常测试字段与测试数据信息中的参数匹配,最后,结合目标测试字段与正常测试字段生成目标测试数据。
步骤203,运行目标待测试函数以调用目标测试数据获得返回值。
本发明实施例中,目标待测试函数在运行目标测试数据之后,通常会得到一个或多个结果,得到的一个或多个结果可以认为是目标待测试函数的返回值。
步骤204,根据返回值对目标待测试函数进行分析,生成检测日志。
本发明实施例中,检测日志中可以包含生成的目标测试数据、目标测试数据的返回值、返回值与标准返回值的相似度以及预测出现该返回值的原因,还可以包含该目标待测试函数是否通过测试的结论等。
在图2所描述的方法中,可以实现软件测试的自动化,无需测试人员手动输入测试数据,提高了软件测试的效率。此外,实施图2所描述的方法,还可以提高软件测试的自动化程度。
图3是根据另一示例性实施例示出的一种基于自动化测试工具的软件测试方法的流程图。如图3所示,此方法包括以下步骤:
步骤301,当检测到软件测试请求时,识别软件测试请求中包含的待测试软件的软件标识以及待测试软件的目标待测试函数标识。
本发明实施例中,软件测试请求可以是测试人员手动输入的,也可以是待测试软件自动生成的。软件标识可以唯一的确定待测试软件,且目标待测试函数标识也可以唯一的确定待测试软件中的目标待测试函数。
步骤302,从预存储的接口信息中获取与软件标识对应的待测试软件的接口。
本发明实施例中,待测试软件的接口可以用于与外部的测试软件等软件进行数据传输,以使待测试软件可以接收到外界的软件发送的数据,同时也可以向外界的软件发送生成的数据。
本发明实施例中,实施上述的步骤301~步骤302,可以根据接收到的软件测试请求中识别出待测试软件的软件标识以及待测试函数标识,以根据软件测试请求快速的确定出需要进行测试的待测试软件和待测试软件中需要测试的待测试函数,提高了待测试软件和待测试函数的识别速度。
步骤303,通过待测试软件的接口获取待测试软件包含的目标待测试函数,并进一步获取目标待测试函数的测试数据信息,该测试数据信息中至少包含测试字段以及各个测试字段的参数。
作为一种可选的实施方式,通过待测试软件的接口获取待测试软件包含的目标待测试函数,并进一步获取目标待测试函数的测试数据信息的方式可以包含以下步骤:
通过待测试软件的接口获取待测试软件的开发文档;
从开发文档中获取与目标待测试函数标识对应的函数开发文档;
从函数开发文档中确定与目标待测试函数标识对应的目标待测试函数的测试数据信息。
其中,实施这种实施方式,可以通过获取到的待测试软件的接口获取到待测试软件的开发文档,并从开发文档中获取到待测试函数的函数开发文档,进而从函数开发文档中确定待测试函数在测试过程中需要输入的数据信息,提高了测试数据信息获取的准确性。
步骤304,判断当前测试类型是否为必传性测试类型,如果是,执行步骤309~步骤313;如果否,执行步骤305~步骤308。
本发明实施例中,必传性测试类型可以为测试数据中的某一个字段为空时对待测试软件的正常运行是否有影响,如果测试得到的返回值与标准返回值匹配,则可以认为未进行传值的字段为空对于待测试软件的正常运行没有影响;如果测试得到的返回值与标准返回值不匹配,则可以认为未进行传值的字段为空对于待测试软件的正常运行有影响。
举例来说,必传性测试的实现方式可以为:从测试数据信息中可以先确定未进行过必传性测试的字段,并从未进行过必传性测试的字段中随机选择待测试字段,将待测试字段对应的数据设置为空(null),除待测试字段之外的字段都生成与测试数据信息中的字段参数匹配的正常测试数据,将正常测试数据与空字段结合,生成包含空字段和正常测试数据的目标测试数据,且空字段和正常测试数据在目标测试数据中的顺序与测试数据信息中包含的字段顺序相同。将生成的目标测试数据发送至待测试软件,以使待测试软件基于目标测试数据运行,并反馈运行结果,当接收到待测试软件反馈的运行结果时,可以对运行结果进行分析,如果该运行结果正常,可以认为待测试字段为空不影响待测试软件的正常运行;如果该运行结果不正常,可以认为待测试字段为空影响待测试软件的正常运行。
步骤305,从测试数据信息中获取各个测试字段的参数的参数标准,并从测试字段中确定目标测试字段,以及从目标测试字段的参数中确定目标测试参数。
本发明实施例中,测试数据信息中可以包含目标待测试函数需要输入的测试数据的所有测试字段和所有测试字段的参数,且测试数据信息中还可以包含测试字段的参数的参数标准,如测试数据信息中可以包含三个字段,每个字段的参数可以包括字段类型、字段长度以及字段范围等,还可以包含每个参数的参数标准。
本发明实施例中,对于测试数据信息中包含的字段都可以设置测试标签,该测试标签可以用于区分任意一个字段是否进行过测试,如果任意一个字段进行过测试,可以将该字段的测试标签确定为已测试标签;如果任意一个字段未进行过测试,则该字段的测试标签始终为初始化标签,即测试标签为未测试标签。当选取目标测试字段时,可以从测试标签为未测试标签的字段中选取,标签可以通过随机算法从未测试标签对应的字段中选择任意一个字段为目标测试字段。
步骤306,根据目标测试字段和目标测试参数生成第一测试字段,其中,第一测试字段与目标测试参数的参数标准不匹配,且第一测试字段与目标测试字段中除目标测试参数之外的参数的参数标准匹配。
本发明实施例中,当前的软件测试需要测试输入的目标测试数据中存在错误的字段时待测试函数是否能正常运行,因此可以选取目标测试数据中的任意一个字段为目标测试字段,该目标测试字段的取值需要与测试数据信息中目标测试字段的目标测试参数对应的参数标准不匹配,即目标测试字段的取值不符合目标测试参数的参数标准,且目标测试字段的取值需要符合除目标测试字段之外的参数的参数标准,以使生成的目标测试字段的取值仅仅不符合目标测试参数的参数标准,可以更加精确的目标测试字段的目标测试参数进行测试,提高了软件测试的精确性。
本发明实施例中,还可以对目标测试字段进行边界值测试,可以获取目标测试字段的参数标准中的边界值,并且可以生成目标测试字段为该边界值的目标测试数据,进而对目标待测试函数进行测试,如果返回值与标准返回值匹配,测可以认为向目标待测试函数输入该目标测试字段为边界值时,对于目标待测试函数没有影响。
步骤307,根据目标测试字段生成第二测试字段,其中,第二测试字段与除目标测试字段之外的测试字段的参数的参数标准匹配。
步骤308,结合第一测试字段和第二测试字段生成目标测试数据,并执行步骤312~步骤313,该目标测试数据中包含第一测试字段和第二测试字段。
本发明实施例中,实施上述的步骤304~步骤308,在判断出当前测试类型不为必传性测试时,确定当前测试需要对测试数据中的任意一个字段的任意一个参数的正确性进行测试,从而确定要测试的字段的参数,并且根据获取到的参数的参数标准生成目标测试数据,以使生成的目标测试数据达到最佳的测试效果。
步骤309,从测试数据信息中获取各个测试字段的参数的参数标准,并从测试字段中确定目标空字段。
本发明实施例中,为了保证必传性测试的准确性,可以从所有的测试字段中只确定一个目标空字段,将该目标空字段设置为空,进而对目标待测试函数进行测试,以确定目标空字段为空是否会对待测试软件的正常运行造成影响。
步骤310,根据目标空字段生成第三测试字段,其中,第三测试字段与除目标空字段之外的测试字段的参数的参数标准匹配。
步骤311,根据第三测试字段和目标空字段生成目标测试数据,其中,目标测试数据中目标空字段设置为空,且目标测试数据中包含第三测试字段。
本发明实施例中,实施上述的步骤309~步骤311,可以对任意字段的必传性进行测试,从测试数据中确定要测试必传性的目标空字段,并将目标空字段设置为空,以及将目标空字段之外的字段依据参数标准进行设置,以生成目标空字段为空的目标测试数据,以提高必传性测试的准确性。
步骤312,运行目标待测试函数以调用目标测试数据获得返回值。
步骤313,根据返回值对目标待测试函数进行分析,生成检测日志。
作为一种可选的实施方式,根据返回值对目标待测试函数进行分析,生成检测日志的方式可以包含以下步骤:
从函数开发文档中获取标准返回值信息;
识别返回值与标准返回值的匹配数据以及不匹配数据;
计算匹配数据与不匹配数据的百分比,并将百分比确定为返回值与标准返回值的相似度;
根据匹配数据、不匹配数据以及相似度生成目标待测试函数的检测日志。
其中,实施这种实施方式,可以将待测试函数根据目标测试数据生成的返回值与标准的返回值进行比较,以得到返回值与标准返回值的差异以及相似度,进而将返回值与标准返回值的差异以及相似度进行记录得到目标待测试函数的检测日志,以使检测日志包含的内容更加全面。
作为一种可选的实施方式,执行步骤313之后,还可以执行以下步骤:
获取存储的所有检测日志;
通过对所有检测日志中的不匹配数据进行分析,实现对目标待测试函数的问题的定位,得到目标待测试函数的问题分析报告。
其中,实施这种实施方式,可以综合以往的检测日志分析得到的返回值与标准返回值出现差异的原因,以及分析导致出现该差异的指令的位置,从而生成问题分析报告,以使测试人员更加快速的定位及解决待测试函数的问题。
在图3所描述的方法中,可以实现软件测试的自动化,无需测试人员手动输入测试数据,提高了软件测试的效率。此外,实施图3所描述的方法,提高了待测试软件和待测试函数的识别速度。此外,实施图3所描述的方法,提高了测试数据信息获取的准确性。此外,实施图3所描述的方法,提高了必传性测试的准确性。
以下是本发明的装置实施例。
图4是根据一示例性实施例示出的一种基于自动化测试工具的软件测试装置的框图。如图4所示,该装置包括:
获取单元401,用于通过待测试软件的接口获取待测试软件包含的目标待测试函数,并进一步获取目标待测试函数的测试数据信息,该测试数据信息中至少包含测试字段以及各个测试字段的参数。
作为一种可选的实施方式,获取单元401通过待测试软件的接口获取待测试软件包含的目标待测试函数,并进一步获取目标待测试函数的测试数据信息的方式具体可以为:
通过待测试软件的接口获取待测试软件的开发文档;
从开发文档中获取与目标待测试函数标识对应的函数开发文档;
从函数开发文档中确定与目标待测试函数标识对应的目标待测试函数的测试数据信息。
其中,实施这种实施方式,可以通过获取到的待测试软件的接口获取到待测试软件的开发文档,并从开发文档中获取到待测试函数的函数开发文档,进而从函数开发文档中确定待测试函数在测试过程中需要输入的数据信息,提高了测试数据信息获取的准确性。
生成单元402,用于生成与获取单元401获取的测试数据信息匹配的目标测试数据。
运行单元403,用于运行目标待测试函数以调用生成单元402生成的目标测试数据获得返回值。
分析单元404,用于根据运行单元403获得的返回值对目标待测试函数进行分析,生成检测日志。
作为一种可选的实施方式,分析单元404根据返回值对目标待测试函数进行分析,生成检测日志的方式具体可以为:
从函数开发文档中获取标准返回值信息;
识别返回值与标准返回值的匹配数据以及不匹配数据;
计算匹配数据与不匹配数据的百分比,并将百分比确定为返回值与标准返回值的相似度;
根据匹配数据、不匹配数据以及相似度生成目标待测试函数的检测日志。
其中,实施这种实施方式,可以将待测试函数根据目标测试数据生成的返回值与标准的返回值进行比较,以得到返回值与标准返回值的差异以及相似度,进而将返回值与标准返回值的差异以及相似度进行记录得到目标待测试函数的检测日志,以使检测日志包含的内容更加全面。
作为一种可选的实施方式,分析单元404还可以用于:
获取存储的所有检测日志;
通过对所有检测日志中的不匹配数据进行分析,实现对目标待测试函数的问题的定位,得到目标待测试函数的问题分析报告。
其中,实施这种实施方式,可以综合以往的检测日志分析得到的返回值与标准返回值出现差异的原因,以及分析导致出现该差异的指令的位置,从而生成问题分析报告,以使测试人员更加快速的定位及解决待测试函数的问题。
在图4所示的基于自动化测试工具的软件测试装置中,可以实现软件测试的自动化,无需测试人员手动输入测试数据,提高了软件测试的效率。此外,在图4所示的装置中,还可以提高软件测试的自动化程度。
图5是根据另一示例性实施例示出的一种基于自动化测试工具的软件测试装置的框图。其中,图5所示的基于自动化测试工具的软件测试装置是由图4所示的基于自动化测试工具的软件测试装置进行优化得到的。与图4所示的基于自动化测试工具的软件测试装置相比,图5所示的基于自动化测试工具的软件测试装置还可以包括:
识别单元405,用于在获取单元401通过待测试软件的接口获取待测试软件包含的目标待测试函数,并进一步获取目标待测试函数的测试数据信息之前,以及当检测到软件测试请求时,识别软件测试请求中包含的待测试软件的软件标识以及待测试软件的目标待测试函数标识。
接口获取单元406,用于从预存储的接口信息中获取与识别单元405识别的软件标识对应的待测试软件的接口。
本发明实施例中,可以根据接收到的软件测试请求中识别出待测试软件的软件标识以及待测试函数标识,以根据软件测试请求快速的确定出需要进行测试的待测试软件和待测试软件中需要测试的待测试函数,提高了待测试软件和待测试函数的识别速度。
作为一种可选的实施方式,图5所示的基于自动化测试工具的软件测试装置的分析单元404可以包括:
判断子单元4041,用于判断当前测试类型是否为必传性测试类型;
确定子单元4042,用于在判断子单元4041判断的结果为否时,从获取单元401获取的测试数据信息中获取各个测试字段的参数的参数标准,并从测试字段中确定目标测试字段,以及从目标测试字段的参数中确定目标测试参数;
第一生成子单元4043,用于根据确定子单元4042确定的目标测试字段和目标测试参数生成第一测试字段,其中,第一测试字段与目标测试参数的参数标准不匹配,且第一测试字段与目标测试字段中除目标测试参数之外的参数的参数标准匹配;
第二生成子单元4044,用于根据确定子单元4042确定的目标测试字段生成第二测试字段,其中,第二测试字段与除目标测试字段之外的测试字段的参数的参数标准匹配;
结合子单元4045,用于结合第一生成子单元4043生成的第一测试字段和第二生成子单元4044生成的第二测试字段生成目标测试数据,目标测试数据中包含第一测试字段和第二测试字段。
其中,实施这种实施方式,在判断出当前测试类型不为必传性测试时,确定当前测试需要对测试数据中的任意一个字段的任意一个参数的正确性进行测试,从而确定要测试的字段的参数,并且根据获取到的参数的参数标准生成目标测试数据,以使生成的目标测试数据达到最佳的测试效果。
作为一种可选的实施方式,图5所示的基于自动化测试工具的软件测试装置的分析单元404还可以包括:
获取子单元4046,用于在判断子单元4041判断的结果为是时,从获取单元401获取的测试数据信息中获取各个测试字段的参数的参数标准,并从测试字段中确定目标空字段;
第三生成子单元4047,用于根据获取子单元4046获取的目标空字段生成第三测试字段,其中,第三测试字段与除目标空字段之外的测试字段的参数的参数标准匹配;
第四生成子单元4048,用于根据第三生成子单元4047生成的第三测试字段和获取子单元4046获取的目标空字段生成目标测试数据,其中,目标测试数据中目标空字段设置为空,且目标测试数据中包含第三测试字段。
其中,实施这种实施方式,可以对任意字段的必传性进行测试,从测试数据中确定要测试必传性的目标空字段,并将目标空字段设置为空,以及将目标空字段之外的字段依据参数标准进行设置,以生成目标空字段为空的目标测试数据,以提高必传性测试的准确性。
在图5所示的基于自动化测试工具的软件测试装置中,可以实现软件测试的自动化,无需测试人员手动输入测试数据,提高了软件测试的效率。此外,在图5所示的装置中,提高了待测试软件和待测试函数的识别速度。此外,在图5所示的装置中,提高了测试数据信息获取的准确性。此外,在图5所示的装置中,提高了必传性测试的准确性。
本发明还提供一种电子设备,该电子设备包括:
处理器;
存储器,该存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时,实现如前所示的基于自动化测试工具的软件测试方法。
该电子设备可以是图1所示装置100。
在一示例性实施例中,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如前所示的基于自动化测试工具的软件测试方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种基于自动化测试工具的软件测试方法,其特征在于,所述方法包括:
通过待测试软件的接口获取所述待测试软件包含的目标待测试函数,并进一步获取所述目标待测试函数的测试数据信息,所述测试数据信息中至少包含测试字段以及各个测试字段的参数;
生成与所述测试数据信息匹配的目标测试数据;
运行所述目标待测试函数以调用所述目标测试数据获得返回值;
根据所述返回值对所述目标待测试函数进行分析,生成检测日志。
2.根据权利要求1所述的方法,其特征在于,所述通过待测试软件的接口获取所述待测试软件包含的目标待测试函数之前,所述方法还包括:
当检测到软件测试请求时,识别所述软件测试请求中包含的待测试软件的软件标识以及所述待测试软件的目标待测试函数标识;
从预存储的接口信息中获取与所述软件标识对应的所述待测试软件的接口。
3.根据权利要求2所述的方法,其特征在于,所述通过待测试软件的接口获取所述待测试软件包含的目标待测试函数,并进一步获取所述目标待测试函数的测试数据信息,包括:
通过所述待测试软件的接口获取所述待测试软件的开发文档;
从所述开发文档中获取与所述目标待测试函数标识对应的函数开发文档;
从所述函数开发文档中确定与所述目标待测试函数标识对应的目标待测试函数的测试数据信息。
4.根据权利要求3所述的方法,其特征在于,所述生成与所述测试数据信息匹配的目标测试数据,包括:
判断当前测试类型是否为必传性测试类型;
如果否,从所述测试数据信息中获取各个所述测试字段的参数的参数标准,并从所述测试字段中确定目标测试字段,以及从所述目标测试字段的参数中确定目标测试参数;
根据所述目标测试字段和所述目标测试参数生成第一测试字段,其中,所述第一测试字段与所述目标测试参数的参数标准不匹配,且所述第一测试字段与所述目标测试字段中除所述目标测试参数之外的参数的参数标准匹配;
根据所述目标测试字段生成第二测试字段,其中,所述第二测试字段与除所述目标测试字段之外的所述测试字段的参数的参数标准匹配;
结合所述第一测试字段和所述第二测试字段生成目标测试数据,所述目标测试数据中包含所述第一测试字段和所述第二测试字段。
5.根据权利要求4所述的方法,其特征在于,当判断出所述当前测试类型为必传性测试类型时,所述方法还包括:
从所述测试数据信息中获取各个所述测试字段的参数的参数标准,并从所述测试字段中确定目标空字段;
根据所述目标空字段生成第三测试字段,其中,所述第三测试字段与除所述目标空字段之外的所述测试字段的参数的参数标准匹配;
根据所述第三测试字段和所述目标空字段生成目标测试数据,其中,所述目标测试数据中所述目标空字段设置为空,且所述目标测试数据中包含所述第三测试字段。
6.根据权利要求3~5任一项所述的方法,其特征在于,所述根据所述返回值对所述目标待测试函数进行分析,生成检测日志,包括:
从所述函数开发文档中获取标准返回值信息;
识别所述返回值与所述标准返回值的匹配数据以及不匹配数据;
计算所述匹配数据与所述不匹配数据的百分比,并将所述百分比确定为所述返回值与所述标准返回值的相似度;
根据所述匹配数据、所述不匹配数据以及所述相似度生成所述目标待测试函数的检测日志。
7.根据权利要求6所述的方法,其特征在于,所述根据所述匹配数据、所述不匹配数据以及所述相似度生成所述目标待测试函数的检测日志之后,所述方法还包括:
获取存储的所有所述检测日志;
通过对所有所述检测日志中的所述不匹配数据进行分析,实现对所述目标待测试函数的问题的定位,得到所述目标待测试函数的问题分析报告。
8.一种基于自动化测试工具的软件测试装置,其特征在于,所述装置包括:
获取单元,用于通过待测试软件的接口获取所述待测试软件包含的目标待测试函数,并进一步获取所述目标待测试函数的测试数据信息,所述测试数据信息中至少包含测试字段以及各个测试字段的参数;
生成单元,用于生成与所述测试数据信息匹配的目标测试数据;
运行单元,用于运行所述目标待测试函数以调用所述目标测试数据获得返回值;
分析单元,用于根据所述返回值对所述目标待测试函数进行分析,生成检测日志。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其存储计算机程序,所述计算机程序使得计算机执行权利要求1~7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910317827.8A CN110162463A (zh) | 2019-04-19 | 2019-04-19 | 基于自动化测试工具的软件测试方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910317827.8A CN110162463A (zh) | 2019-04-19 | 2019-04-19 | 基于自动化测试工具的软件测试方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110162463A true CN110162463A (zh) | 2019-08-23 |
Family
ID=67639767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910317827.8A Pending CN110162463A (zh) | 2019-04-19 | 2019-04-19 | 基于自动化测试工具的软件测试方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110162463A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113515447A (zh) * | 2021-05-18 | 2021-10-19 | 中国工商银行股份有限公司 | 系统自动化测试方法及装置 |
CN113760714A (zh) * | 2020-10-30 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种软件测试的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103268285A (zh) * | 2013-05-31 | 2013-08-28 | 百度在线网络技术(北京)有限公司 | 针对api接口的健壮性测试用例自动生成方法和装置 |
CN103631720A (zh) * | 2013-12-20 | 2014-03-12 | 百度在线网络技术(北京)有限公司 | 测试用例的生成方法和装置 |
CN113068452B (zh) * | 2012-12-05 | 2015-12-23 | 中国人民解放军第五七二0工厂 | 一种自动测试系统软件开发平台的构建方法 |
CN105681126A (zh) * | 2015-12-30 | 2016-06-15 | 合一网络技术(北京)有限公司 | 一种基于协议接口的自动化测试方法及系统 |
CN107153615A (zh) * | 2017-05-19 | 2017-09-12 | 千寻位置网络有限公司 | 软件测试的方法及系统、服务终端 |
-
2019
- 2019-04-19 CN CN201910317827.8A patent/CN110162463A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113068452B (zh) * | 2012-12-05 | 2015-12-23 | 中国人民解放军第五七二0工厂 | 一种自动测试系统软件开发平台的构建方法 |
CN103268285A (zh) * | 2013-05-31 | 2013-08-28 | 百度在线网络技术(北京)有限公司 | 针对api接口的健壮性测试用例自动生成方法和装置 |
CN103631720A (zh) * | 2013-12-20 | 2014-03-12 | 百度在线网络技术(北京)有限公司 | 测试用例的生成方法和装置 |
CN105681126A (zh) * | 2015-12-30 | 2016-06-15 | 合一网络技术(北京)有限公司 | 一种基于协议接口的自动化测试方法及系统 |
CN107153615A (zh) * | 2017-05-19 | 2017-09-12 | 千寻位置网络有限公司 | 软件测试的方法及系统、服务终端 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760714A (zh) * | 2020-10-30 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种软件测试的方法和装置 |
CN113515447A (zh) * | 2021-05-18 | 2021-10-19 | 中国工商银行股份有限公司 | 系统自动化测试方法及装置 |
CN113515447B (zh) * | 2021-05-18 | 2024-04-26 | 中国工商银行股份有限公司 | 系统自动化测试方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106844217B (zh) | 对应用的控件进行埋点的方法及装置、可读存储介质 | |
CN105553769B (zh) | 一种数据采集分析系统和方法 | |
CN107957986B (zh) | 一种计量检定校准原始记录智能编辑方法及系统 | |
US10184882B2 (en) | System and method for providing user guidance for electronic device processing | |
CN113032792B (zh) | 系统业务漏洞检测方法、系统、设备及存储介质 | |
CN110413506A (zh) | 测试用例推荐方法、装置、设备及存储介质 | |
CN108446221A (zh) | 系统测试方法、装置、计算机设备和存储介质 | |
CN109871326A (zh) | 一种脚本录制的方法和装置 | |
CN109634837A (zh) | 自动化测试方法、装置、设备及存储介质 | |
CN106485261A (zh) | 一种图像识别的方法和装置 | |
CN110134593A (zh) | 软件测试方法、装置、电子设备及存储介质 | |
CN104966002B (zh) | 识别虚假移动终端的方法和装置 | |
CN106326120B (zh) | 一种应用软件的回归测试方法及装置、电子设备 | |
CN108780048A (zh) | 一种确定检测设备的方法、检测装置及可读存储介质 | |
CN108664372A (zh) | 测试过程的监控装置、方法及计算机可读存储介质 | |
CN106776319A (zh) | 自动测试方法及装置 | |
CN110162463A (zh) | 基于自动化测试工具的软件测试方法、装置及电子设备 | |
CN105515909B (zh) | 一种数据采集测试方法和装置 | |
CN105577472A (zh) | 一种数据采集测试方法和装置 | |
CN107895119A (zh) | 程序安装包检测方法、装置及电子设备 | |
CN115391230A (zh) | 一种测试脚本生成、渗透测试方法、装置、设备及介质 | |
CN110334008B (zh) | 一种数据自动化处理方法、装置、电子设备及存储介质 | |
CN115827610A (zh) | 一种有效负荷的检测方法及装置 | |
CN109032956A (zh) | 一种接口测试方法及装置 | |
CN111611465B (zh) | 产品检测系统、方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information |
Address after: 201, room 518000, building A, No. 1, front Bay Road, Qianhai Shenzhen Guangdong Shenzhen Hong Kong cooperation zone (Qianhai business secretary) Applicant after: Pingan Pu Hui Enterprise Management Co., Ltd. Address before: 518000 Guangdong city of Shenzhen province Qianhai Shenzhen Hong Kong cooperation zone before Bay Road No. 1 building 201 room A Applicant before: Pingan Pu Hui Enterprise Management Co., Ltd. |
|
CB02 | Change of applicant information | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |