CN105393226A - 脚本测试案例和手动测试案例的自动生成 - Google Patents
脚本测试案例和手动测试案例的自动生成 Download PDFInfo
- Publication number
- CN105393226A CN105393226A CN201380077530.XA CN201380077530A CN105393226A CN 105393226 A CN105393226 A CN 105393226A CN 201380077530 A CN201380077530 A CN 201380077530A CN 105393226 A CN105393226 A CN 105393226A
- Authority
- CN
- China
- Prior art keywords
- test
- test cases
- list
- application
- field
- 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/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本文公开了基于软件应用中所包括的元数据来自动提供手动测试案例和脚本测试案例的***和方法。在实施方案中,应用可包括生成输出文件的元件,所述输出文件包括与应用中具有一个或多个字段的一个或多个表单相对应的信息。所述信息可由测试装置或应用利用以基于所述信息自动生成手动测试案例、自动化脚本测试案例或手动测试案例和自动化测试案例的组合。在实施方案中,手动测试案例可包括呈自然语言格式的指令序列。在实施方案中,自动化测试案例可呈脚本语言的形式,被配置成与所述应用或适当的应用仿真器交互。
Description
背景技术
对软件应用越来越多的使用和依赖,尤其是在移动计算装置使先前不可用的或不实际的各种用户案例变成可能的领域,已经增大对软件测试工具的需求。一种创建用于软件应用的手动测试案例的方法是针对域测试器创建呈自然语言的测试案例(例如,人类可读英语),所述语言描述了与软件应用的可能交互。手动测试案例随后由自动化工程师利用以创建自动化脚本,从而针对软件应用的例子执行测试案例。这一过程可能繁琐、耗时并且容易出错。
附图说明
在不一定按比例绘制的附图中,相似标号可描述不同视图中相似的组件。具有不同字母后缀的相似标号可表示相似组件的不同实例。附图以示例方式而非限制性的方式大体图示本文献中论述的各种实施方案。
图1是图示了根据一些实施方案的示例测试案例生成***的框图。
图2描述了显示用户可编辑表单的计算装置的示例。
图3是图示了根据一些实施方案的检查应用的示例方法的流程图。
图4是图示了根据一些实施方案的用于生成测试案例的示例方法的流程图。
图5是图示了可对其执行本文所论述技术中的任一种或多种的示例机器的框图。
具体实施方式
在应用的开发期间,开发者可以访问该应用内的所有对象名称(例如,字段、按钮、函数等)。为了减少建立自动化测试过程所需的时间,开发者可以向应用添加指令或模块,当应用运行时,这些指令或模块可以自动生成输出文件。一般来说,测试器可以打开应用中的报告屏幕,并且应用中的指令或模块会生成输出文件,该输出文件含有名称以及与报告中的所有字段有关的任何其他信息。
另外,输出文件还可能含有与一个或多个函数名称连接的所有字段名称(例如,populateField和verifyField),并且这些字段所期望的值可用自动化测试脚本填充。输出文件的生成可是一种选择,响应于请求(例如,在应用中启用/禁用设置)而发生。在另一个示例中,可由开发者生成输出文件,开发者可将该文件传递至自动化测试工程师以便于自动化测试应用。
这些用于创建测试案例的方法和机制可用于生成自动化测试脚本以及手动测试案例。应用内待测试的任何对象均可通过应用本身来列举,并且与对应于这些对象中的每一者的数据集一起输出至输出文件。以此方式可减少测试器的时间和失败,因为域测试器不需要生成或输入呈“函数/代码”格式的测试脚本,这些测试脚本可能仅仅与应用开发者密切相关。
图1是图示了根据一些实施方案的示例测试案例生成***100的框图。在示例中,测试装置102可耦合至测试应用104。测试应用可由测试装置102在仿真环境中执行,或由可通过物理或网络连接件(例如,通过有线或无线网络)耦合至测试装置102的第二装置执行。测试装置102可包括测试案例数据库106,该测试案例数据库被配置成存储可应用于测试应用104的测试案例。
测试案例生成***100可包括用户界面,该用户界面具有测试装置102、测试应用104或二者。该用户界面可提供用于开发者108的机制,以任选地通过测试装置输入112与测试装置102交互或通过直接应用输入110与测试应用交互。在示例中,开发者108可与测试应用104交互,同时测试装置102记录或监视测试应用104的活动。以此方式,测试装置102可积累与测试应用104的一个或多个功能有关的信息。
例如,测试案例数据库106可包括呈一种或多种基于计算机的语言(例如,C#、JAVA等)的测试脚本,这些测试脚本可与测试应用104交互,以测试测试应用104的一个或多个功能。在另一个示例中,测试数据库106可包括一个或多个手动测试案例。手动测试案例可包括呈自然语言格式(例如,英语、西班牙语等)的指令序列。该指令序列可为测试开发者提供用户可读场景,测试开发者可利用该用户可读场景来手动操作测试应用104中的选项或特征,以进行手动测试案例。
在示例中,测试应用104中的工作流可由手动或自动化测试案例涵盖并且再运行多次。例如,可以多种方式执行对报告或表单的“保存”操作,诸如从“文件”菜单中选择保存选项、选择“关闭”和“保存”选项或打开新的报告,该新的报告使得能够提示保存待生成的现有报告。域测试器可以此方式请求执行测试脚本以验证“保存”操作的功能并且生成报告。作为响应,测试装置102可自动生成脚本以涵盖所有可能的“保存”场景。Save()函数可被配置成由应用开发者将其名称作为变量报告,以使得由测试装置102所生成的手动测试案例能够提供待执行的所有“保存”操作。
图2描述了显示用户可编辑表单204的计算装置202的示例200。计算装置202可包括一个或多个用户输入机制,例如可使得用户能够与用户可编辑表单204交互的触摸屏显示器。用户可编辑表单204可包括多个用户可编辑字段。该表单可包括一个或多个表单导航选项。例如,“保存和新建”按钮206可在通过计算装置202上的用户输入或在被配置成模拟用户输入的测试机制的指导下启动时,将数据保存在用户可编辑字段中并且生成用户可编辑表单204的新的空白版本。
用户可编辑表单204中的字段可例如包括“从”段208,该字段被配置成接收起始时间;“至”字段210,该字段被配置成接收终止时间;“持续时间”字段212,该字段被配置成接收以小时为单位的时间长度;开放正文字段214,该开放正文字段被配置成接收纯文本数据;以及其他类型化或未类型化的(例如,自由形式的)数据字段。类型化数据字段的另一个示例包括“平均距离”字段216,该字段被配置成接收数据作为度量单位。
在示例中,用于与表单204交互的手动测试案例的纯英文指令集可包括:
1)敲击“从”字段。
2)输入值“6:00AM”。
3)从“从”字段获得值。
4)将值与“6:00AM”进行比较。
5)敲击“至”字段。
6)输入值“7:00AM”。
7)从“至”字段获得值。
8)将值与“7:00AM”进行比较。
9)敲击“持续时间”计算字段。
10)从“持续时间”计算字段获得值。
11)将值与“1.00”进行比较。
在类似示例中,用于与表单204交互的脚本测试案例的自动化程序指令集可包括:
1)TapField(“从”)。
2)SetFieldValue(“6:00AM”)。
3)Value=GetFieldValue()。
4)CheckEquals(Value,“6:00AM”)。
5)TapField(“至”)。
6)SetFieldValue(“7:00AM”)。
7)Value=GetFieldValue()。
8)CheckEquals(Value,“7:00AM”)。
9)TapField(“持续时间”)。
10)Value=GetFieldValue()。
11)CheckEquals(Value,1.0)。
可通过由测试人员与表单204手动交互或通过在自动化测试案例环境中应用脚本测试案例指令来以类似方式迭代地测试表单中的每个字段。
图3是图示了根据一些实施方案的检查应用的示例方法300的流程图。在示例中,方法300可由图1的测试装置102执行,试图生成应用诸如测试应用104的测试案例。
在301中,测试装置可接收测试应用。在示例中,测试应用可由呈本机模式或呈仿真模式的测试装置执行。在另一个示例中,测试装置可通过通信链路诸如介于测试装置与执行测试应用的第二装置之间的网络连接件来仅接收指示测试应用的功能和行为的数据。
在302中,测试装置可确定测试应用是否包括表单。例如,测试应用可包括用户可编辑表单诸如图2的表单204。该表单可包括用户可编辑字段、用户控件或其他用户界面特征。
在304中,测试装置可检查确定测试应用中的所有表单是否均已进行测试。在306中,如果测试应用中的所有表单均已进行了测试,那么该方法可终止。在308中,如果测试应用中的一个或多个表单尚未进行测试,那么该测试应用可试图检测当前表单中的可编辑字段。可编辑字段可包括多种用户界面机制中的任一种,其中用户可通过选择一个或多个选项诸如单选按钮、滑块、复选框、搜索框、下拉菜单或其他界面元素来在对话框区域中提供数据诸如文本、值或其他信息。
在310中,测试装置可检查确定测试应用中的所有字段是否具有对应的测试案例。在312中,如果表单中的任何字段并不具有对应的测试案例,那么生成用于所述字段的测试案例。按照这种顺序进行的检查和生成用于表单中的所有字段的测试案例可重复进行,直到用于所有字段的测试案例被提供。
在314中,测试装置可迭代至测试应用中的下一个表单。可以此方式检查测试应用内的所有表单的字段,并且每个表单中的每个字段均可在无需用户交互的情况下具有生成的对应的测试案例。
虽然在图3的示例中串行排列,但其他示例可使用组织为两个或更多个虚拟机或子处理器的多个处理器或单个处理器来对操作重新排序、省略一个或多个操作和/或并行执行两个或更多个操作。此外,其他示例可将这些操作实现为一个或多个特定的互连硬件或集成电路模块,这些集成电路模块具有相关的控件和数据信号在模块之间进行传输并且通过模块进行传输。因此,任何过程流均可适用于软件、固件、硬件和混合实现方式。
图4是图示了根据一些实施方案的用于生成测试案例的示例方法400的流程图。在示例中,方法400可在图3的操作312中由计算装置诸如图3的测试装置204执行。
在402中,测试装置可检测对应于表单中的字段的元数据。该字段可能是具体表单独有的,或可能是多个表单上所存在的公共字段。所述元数据可提供指定了字段的一种或多种性质的信息,诸如字段是否是用户可编辑的、可被输入到字段中的数据的有效格式或值范围或可指示可进行测试的字段的特征或功能的其他信息。
在404中,测试装置可确定字段是否是用户可修改的。例如,用户可修改字段可包括用户可在其中编辑内容或在一个或多个选项之间作出预定选择的字段。字段(其并不是用户可修改的)可包括只读字段。例如,向用户呈现信息(例如,计算结果或其他数据)的字段。
在406中,如果测试装置确定字段是用户可修改的;那么测试装置可基于对应于该字段的元数据来生成用户可修改字段的测试数据和自动化测试函数。在示例中,自动化测试函数可包括用于将字段用元数据中所包括的数据值填充的脚本函数。
在408中,测试装置可生成自然语言测试案例。在示例中,该自然语言测试案例可以是基于在406中所生成的自动化测试函数。在另一个示例中,自然语言测试案例可以基于对应于字段的元数据独立生成。
在410中,如果测试装置确定字段并不是用户可修改的,那么测试装置可生成用于检索和测试字段内容的测试验证函数。例如,测试函数可读取由字段呈现的值并将所述值与元数据中所包括的数据,或与源自一个或多个其他测试变量的所计算值进行比较。
在412中,测试装置可生成自然语言验证程序。在示例中,该自然语言验证程序可以是基于在410中所生成的测试验证函数。在另一个示例中,测试验证函数可以基于对应于字段的元数据独立生成。
在414中,测试装置可输出自动化语言测试和自然语言测试。在示例中,测试装置可以向第一文件输出自动化测试函数和测试验证函数,并且向第二文件输出自然语言测试案例和自然语言验证程序。自动化脚本和自然语言测试包二者均可由自动化***以此方式开发。
虽然在图4的示例中串行排列,但其他示例可使用组织为两个或更多个虚拟机或子处理器的多个处理器或单个处理器来对操作重新排序、省略一个或多个操作和/或并行执行两个或更多个操作。此外,其他示例可将这些操作实现为一个或多个特定的互连硬件或集成电路模块,这些集成电路模块具有相关的控件和数据信号在模块之间进行传输并且通过模块进行传输。因此,任何过程流均可适用于软件、固件、硬件和混合实现方式。
图5是图示了可对其执行本文所论述技术(例如,方法)中的任一种或多种的示例机器500的框图。在替代实施方案中,机器500可作为独立式装置操作或可连接(例如,联网)至其他机器。在联网部署中,机器500可作为服务器机器、客户端机器或二者在服务器-客户端网络环境中操作。在示例中,机器500可充当对等(P2P)(或其他分布式)网络环境中的对等机器。机器500可以是个人计算机(PC)、平板PC、个人数字助理(PDA)、移动电话、web设备或者能够执行指定由该机器所采取的动作的指令(顺序地或其他方式)的任何机器。另外,尽管仅图示了单个机器,但术语“机器”也应当被理解为包括任何如下机器的集合,机器单独地或联合地执行用以实现本文所论述方法中的任一种或多种的一个(或多个)指令集,诸如云计算、软件即服务(SaaS)、其他计算机集群配置。
示例(如本文所述)可包括逻辑或多个组件、模块或机制,或可对它们进行操作。模块是能够执行指定操作的有形实体并且可以某种方式配置或布置。在示例中,可将电路作为模块以指定方式布置(例如,布置在内部或相对于外部实体诸如其他电路布置)。在示例中,一个或多个计算机***(例如,独立式客户端或服务器计算机***)或一个或多个硬件处理器的全部或一部分可通过固件或软件(例如,指令、应用部分或应用)配置为操作来执行指定操作的模块。在示例中,软件可存在于(1)非暂时性机器可读介质上或(2)传输信号中。在示例中,软件在由模块的底层硬件执行时,导致硬件执行指定操作。
因此,应当理解,术语“模块”涵盖有形实体,该有形实体是物理上构造而成的实体、专门配置而成的实体(例如,硬连线实体)或临时配置而成的实体(例如,暂时性实体),所述实体(例如,经编程)用于以指定方式操作或用于执行本文所述的任何操作的一部分或全部。考虑其中模块临时配置而成的示例,这些模块中的每一个均不需要在任何一个时刻实例化。例如,在这些模块包括使用软件配置而成的通用硬件处理器的情况下,可将通用硬件处理器在不同的时间配置为相应不同的模块。例如,软件可相应地配置硬件处理器以在一个时刻构成具体模块并且在不同的时刻构成不同的模块。
机器(例如,计算机***)500可包括硬件处理器502(例如,处理单元、图形处理单元(GPU)、硬件处理器核心或它们的任意组合)、主存储器504和静态存储器506,其中的一些或全部可通过互联链路508(例如,总线、链路、互连件等)彼此通信。机器500可进一步包括显示器装置510、输入装置512(例如,键盘)和用户界面(UI)导航装置514(例如,鼠标)。在示例中,显示器装置510、输入装置512和UI导航装置514可为触摸屏显示器。此外,机器500可包括大容量存储设备(例如,驱动单元)516、信号生成装置518(例如,扬声器)、网络接口装置520以及一个或多个传感器521诸如全球定位***(GPS)传感器、相机、录像机、罗盘、加速度计或其他传感器。机器500可包括输出控制器528诸如串行(例如,通用串行总线(USB)、并行或者其他有线或无线(例如,红外线(IR))连接件,以进行通信或控制一个或多个***装置(例如,打印机、读卡器等)。
大容量存储设备516可包括上面存储有数据结构或指令524(例如,软件)的一个或多个集合的机器可读介质522,这些集合实现了本文所述技术或功能中的任何一种或多种或由它们进行利用。指令524在由机器500执行期间,还可完全或至少部分地存在于主存储器504内、存在于静态存储器506内或存在于硬件处理器502内。在示例中,硬件处理器502、主存储器504、静态存储器506或大容量存储设备516的一个或任意组合均可构成机器可读介质。
虽然机器可读介质522被图示为单个介质,但术语“机器可读介质”可包括被配置成存储一个或多个指令524的单个介质或多个介质(例如,集中式或分布式数据库和/或相关联的高速缓存和服务器)。
术语“机器可读介质”可包括能够存储、编码或携带由机器500执行并且导致机器500执行本公开的任一种或多种技术的指令或者能够存储、编码或携带由这样的指令利用或与其相关联的数据结构的任何有形介质。非限制性机器可读介质示例可包括固态存储器以及光学介质和磁性介质。机器可读介质的具体示例可包括:非易失性存储器诸如半导体存储器装置(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))和快闪存储器装置;磁盘诸如内置硬盘和可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。
可利用多个传送协议(例如,帧中继、互联网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传送协议(HTTP)等)中的任一个来经由网络接口装置520使用传输介质在通信网络526上进一步传输或接收指令524。示例通信网络可包括局域网(LAN)、广域网(WAN)、分组数据网(例如,互联网)、移动电话网(例如,蜂窝网)、普通老式电话(POT)网以及无线数据网(例如,电气与电子工程师学会(IEEE)802.11标准系列(已知为、IEEE802.16标准系列(已知为))、对等(P2P)网等等。在示例中,网络接口装置520可包括一个或多个物理插孔(例如,以太网插孔、同轴插孔或电话插孔)或一根或多根天线以连接至通信网络526。在示例中,网络接口装置520可包括多根天线以使用单输入多输出(SIMO)技术、多输入多输出(MIMO)技术或多输入单输出(MISO)技术中的至少一种无线通信。术语“传输介质”应当被理解为包括能够存储、编码或携带由机器500执行的指令的任何有形介质,并且包括数字或模拟通信信号或其他有形介质以有助于这种软件的通信。
权利要求书(按照条约第19条的修改)
1.一种生成测试案例的方法,所述方法包括:
由处理器接收呈可执行格式的测试应用,所述测试应用包括多个表单;
利用所述处理器模拟所述测试应用的执行;
迭代通过所述测试应用的所述多个表单中的每一者;
检测所述多个表单的至少一个表单中的字段;
针对所述测试应用中的元数据检查所述至少一个表单中所包括的字段;
基于所述元数据生成对应于所述字段的至少一个测试案例;
将所述测试案例以第一格式存储;以及
将所述测试案例以第二格式存储。
2.如权利要求1所述的方法,其中将所述测试案例以所述第二格式存储包括将所述测试案例从所述第一格式转化成第二格式。
3.如权利要求1所述的方法,其中所述第一格式为自动化测试语言并且所述第二格式为自然语言格式。
4.如权利要求3所述的方法,其中所述自动化测试语言为脚本语言。
5.如权利要求1所述的方法,其中生成对应于所述字段的所述至少一个测试案例包括基于所述元数据的内容确定适于所述字段的值。
6.如权利要求1所述的方法,其中所述迭代通过所述多个表单中的每一者自动执行。
7.如权利要求1所述的方法,其还包括:
从来自所述多个表单的表单的用户选择接收导航输入;
其中所述迭代通过所述多个表单中的每一者至少部分基于来自所述用户的所述导航输入。
8.一种测试案例生成***,其包括:
应用交互模块,所述应用交互模块被配置成接收测试应用并与所述测试应用交互,所述测试应用包括与所述测试应用的至少一个功能相对应的元数据;
表单交互模块,所述表单交互模块耦合至所述应用交互模块,并且被配置成检索与所述测试应用中所包括的数据输入表单相对应的元数据;
测试案例生成模块,所述测试案例生成模块被配置成从所述表单交互模块接收所述元数据并且至少部分基于所述元数据生成测试案例,所述测试案例呈第一格式和第二格式、与所述数据输入表单的字段相对应;
其中所述测试案例提供用于测试所述测试应用的所述至少一个功能的机制,并且由所述测试案例生成***以第一格式和第二格式存储。
9.如权利要求8所述的测试案例生成***,其中所述测试案例生成模块包括转换模块,所述转换模块被配置成将所述测试案例从所述第一格式转换成第二格式。
10.如权利要求8所述的测试案例生成***,其中所述第一格式为自动化测试语言并且所述第二格式为自然语言格式。
11.如权利要求10所述的测试案例生成***,其中所述自动化测试语言为脚本语言。
12.如权利要求8所述的测试案例生成***,其中所述测试案例生成模块被配置成基于所述元数据的所述内容来确定适于所述字段的值以生成所述测试案例。
13.如权利要求8所述的测试案例生成***,其中所述表单交互模块被配置成自动迭代通过所述多个表单中的每一者。
14.如权利要求8所述的测试案例生成***,其中所述表单交互模块被配置成从用户接收指示所述多个表单中的表单选择的导航输入,并且至少部分基于来自所述用户的所述导航输入迭代通过所述多个表单中的每一者。
15.一种包括指令的有形计算机可读介质,所述指令在由处理器执行时使得所述处理器:
接收呈可执行格式的测试应用,所述测试应用包括多个表单;
利用所述处理器模拟所述测试应用的执行;
迭代通过所述测试应用的所述多个表单中的每一者;
检测所述多个表单的至少一个表单中的字段;
针对所述测试应用中的元数据检查所述至少一个表单中所包括的字段;
基于所述元数据生成对应于所述字段的至少一个测试案例;
将所述测试案例以第一格式存储;以及
将所述测试案例以第二格式存储。
16.如权利要求15所述的有形计算机可读介质,其中所述指令还导致所述处理器将所述测试案例从所述第一格式转换成第二格式。
17.如权利要求15所述的有形计算机可读介质,其中所述第一格式为自动化测试语言并且所述第二格式为自然语言格式。
18.如权利要求17所述的有形计算机可读介质,其中所述自动化测试语言为脚本语言。
19.如权利要求15所述的有形计算机可读介质,其中对应于所述字段的所述至少一个测试案例的生成包括基于所述元数据的内容确定适于所述字段的值。
20.如权利要求15所述的有形计算机可读介质,其中所述迭代通过所述多个表单中的每一者自动执行。
21.如权利要求15所述的有形计算机可读介质,其还包括指令,所述指令在由处理器执行时使得所述处理器:
从来自所述多个表单的表单的用户选择接收导航输入;
其中所述迭代通过所述多个表单中的每一者至少部分基于来自所述用户的所述导航输入。
Claims (21)
1.一种生成测试案例的方法,所述方法包括:
由处理器接收呈可执行格式的测试应用,所述测试应用包括多个表单;
利用所述处理器模拟所述测试应用的执行;
迭代通过所述测试应用的所述多个表单中的每一者;
检测所述多个表单的至少一个表单中的字段
针对所述测试应用中的元数据检查所述至少一个表单中所包括的字段;
基于所述元数据生成对应于所述字段的至少一个测试案例;
将所述测试案例以第一格式存储;以及
将所述测试案例以第二格式存储。
2.如权利要求1所述的方法,其中将所述测试案例以所述第二格式存储包括将所述测试案例从所述第一格式转化成第二格式。
3.如权利要求1所述的方法,其中所述第一格式为自动化测试语言并且所述第二格式为自然语言格式。
4.如权利要求3所述的方法,其中所述自动化测试语言为脚本语言。
5.如权利要求1所述的方法,其中生成对应于所述字段的所述至少一个测试案例包括基于所述元数据的内容确定适于所述字段的值。
6.如权利要求1所述的方法,其中所述迭代通过所述多个表单中的每一者自动执行。
7.如权利要求1所述的方法,其还包括:
从来自所述多个表单的表单的用户选择接收导航输入;
其中所述迭代通过所述多个表单中的每一者至少部分基于来自所述用户的所述导航输入。
8.一种测试案例生成***,其包括:
应用交互模块,所述应用交互模块被配置成接收测试应用并与所述测试应用交互,所述测试应用包括与所述测试应用的至少一个功能相对应的元数据;
表单交互模块,所述表单交互模块耦合至所述应用交互模块,并且被配置成检索与所述测试应用中所包括的数据输入表单相对应的元数据;
测试案例生成模块,所述测试案例生成模块被配置成从所述表单交互模块接收所述元数据并且至少部分基于所述元数据生成测试案例,所述测试案例呈第一格式和第二格式、与所述数据输入表单的字段相对应;
其中所述测试案例提供用于测试所述测试应用的所述至少一个功能的机制,并且由所述测试案例生成***以第一格式和第二格式存储。
9.如权利要求8所述的测试案例生成***,其中所述测试案例生成模块包括转换模块,所述转换模块被配置成将所述测试案例从所述第一格式转换成第二格式。
10.如权利要求8所述的测试案例生成***,其中所述第一格式为自动化测试语言并且所述第二格式为自然语言格式。
11.如权利要求10所述的测试案例生成***,其中所述自动化测试语言为脚本语言。
12.如权利要求8所述的测试案例生成***,其中所述测试案例生成模块被配置成基于所述元数据的所述内容来确定适于所述字段的值以生成所述测试案例。
13.如权利要求8所述的测试案例生成***,其中所述表单交互模块被配置成自动迭代通过所述多个表单中的每一者。
14.如权利要求8所述的测试案例生成***,其中所述表单交互模块被配置成从用户接收指示所述多个表单中的表单选择的导航输入,并且至少部分基于来自所述用户的所述导航输入迭代通过所述多个表单中的每一者。
15.一种包括指令的有形计算机可读介质,所述指令在由处理器执行时使得所述处理器:
接收呈可执行格式的测试应用,所述测试应用包括多个表单;
利用所述处理器模拟所述测试应用的执行;
迭代通过所述测试应用的所述多个表单中的每一者;
检测所述多个表单的至少一个表单中的字段
针对所述测试应用中的元数据检查所述至少一个表单中所包括的字段;
基于所述元数据生成对应于所述字段的至少一个测试案例;
将所述测试案例以第一格式存储;以及
将所述测试案例以第二格式存储。
16.如权利要求15所述的有形计算机可读介质,其中所述指令还导致所述处理器将所述测试案例从所述第一格式转换成第二格式。
17.如权利要求15所述的有形计算机可读介质,其中所述第一格式为自动化测试语言并且所述第二格式为自然语言格式。
18.如权利要求17所述的有形计算机可读介质,其中所述自动化测试语言为脚本语言。
19.如权利要求15所述的有形计算机可读介质,其中对应于所述字段的所述至少一个测试案例的生成包括基于所述元数据的内容确定适于所述字段的值。
20.如权利要求15所述的有形计算机可读介质,其中所述迭代通过所述多个表单中的每一者自动执行。
21.如权利要求15所述的有形计算机可读介质,其还包括指令,所述指令在由处理器执行时使得所述处理器:
从来自所述多个表单的表单的用户选择接收导航输入;
其中所述迭代通过所述多个表单中的每一者至少部分基于来自所述用户的所述导航输入。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/051703 WO2015012814A1 (en) | 2013-07-23 | 2013-07-23 | Automated generation of scripted and manual test cases |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105393226A true CN105393226A (zh) | 2016-03-09 |
Family
ID=52393681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380077530.XA Pending CN105393226A (zh) | 2013-07-23 | 2013-07-23 | 脚本测试案例和手动测试案例的自动生成 |
Country Status (11)
Country | Link |
---|---|
US (1) | US9934136B2 (zh) |
CN (1) | CN105393226A (zh) |
AU (1) | AU2013394952B2 (zh) |
BR (1) | BR112015031100A2 (zh) |
CA (1) | CA2915116C (zh) |
DE (1) | DE112013007271T5 (zh) |
GB (1) | GB2530928A (zh) |
MX (1) | MX2015017111A (zh) |
RU (1) | RU2015152169A (zh) |
SG (1) | SG11201509527TA (zh) |
WO (1) | WO2015012814A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9934136B2 (en) | 2013-07-23 | 2018-04-03 | Landmark Graphics Corporation | Automated generation of scripted and manual test cases |
CN110162459A (zh) * | 2019-04-15 | 2019-08-23 | 深圳壹账通智能科技有限公司 | 测试案例生成方法、装置及计算机可读存储介质 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10776251B1 (en) | 2016-07-22 | 2020-09-15 | Amdocs Development Limited | System, method, and computer program for automatically converting manual test cases to automated test structures in a software testing project |
US10114738B2 (en) | 2017-03-16 | 2018-10-30 | Wipro Limited | Method and system for automatic generation of test script |
US20180322034A1 (en) * | 2017-05-05 | 2018-11-08 | Microsoft Technology Licensing, Llc | Running test scripts in multiple language platforms |
US10367650B2 (en) * | 2017-11-06 | 2019-07-30 | Cognizant Technology Solutions India Pvt. Ltd. | System and method for efficiently developing and testing home automation systems |
CN108717392A (zh) * | 2018-04-11 | 2018-10-30 | 南京思博特智能科技有限公司 | 一种智能软件自动化测试方法 |
US11645467B2 (en) | 2018-08-06 | 2023-05-09 | Functionize, Inc. | Training a system to perform a task with multiple specific steps given a general natural language command |
US11106570B2 (en) * | 2018-10-10 | 2021-08-31 | T-Mobile Usa, Inc. | Zero coding automation with natural language processing, such as for use in testing telecommunications software and resources |
CN109828905B (zh) * | 2018-12-15 | 2023-08-22 | 中国平安人寿保险股份有限公司 | 自动化测试方法、装置、计算机装置及存储介质 |
US20210294731A1 (en) | 2020-03-19 | 2021-09-23 | S2 Technologies, Inc. | System and method for executing manual tests integrating automation |
US11436130B1 (en) | 2020-07-28 | 2022-09-06 | Amdocs Development Limited | System, method, and computer program for automating manually written test cases |
CN113377653B (zh) * | 2021-06-10 | 2023-09-26 | 北京京东振世信息技术有限公司 | 生成测试用例的方法和装置 |
CN113535548B (zh) * | 2021-06-21 | 2023-01-03 | 上汽通用五菱汽车股份有限公司 | 测试脚本生成方法、装置、设备及计算机可读存储介质 |
CN113282519B (zh) * | 2021-07-22 | 2021-11-12 | 北京关键科技股份有限公司 | 一种用于软件测试的用例数据推荐方法、***和介质 |
CN117312177B (zh) * | 2023-11-30 | 2024-02-09 | 北京控制工程研究所 | 航天器控制***的测试用例生成方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1938690A (zh) * | 2004-01-13 | 2007-03-28 | 交响乐服务公司 | 将自动测试脚本持续转换成抽象测试用例表示的方法和*** |
CN101165658A (zh) * | 2006-10-18 | 2008-04-23 | 国际商业机器公司 | 自动生成可再现运行时问题的单元测试用例的方法和*** |
US20090077422A1 (en) * | 2007-09-19 | 2009-03-19 | Sunil Khaladkar | Method and system for accelerating test automation of software applications |
CN101436128A (zh) * | 2007-11-16 | 2009-05-20 | 北京邮电大学 | 软件测试用例自动生成方法及*** |
US20120117095A1 (en) * | 2010-11-09 | 2012-05-10 | Verisign, Inc. | Test Automation Tool For Domain Registration Systems |
US20130097586A1 (en) * | 2011-10-17 | 2013-04-18 | International Business Machines Corporation | System and Method For Automating Test Automation |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6880109B2 (en) * | 2001-07-03 | 2005-04-12 | The United States Of America As Represented By The Secretary Of The State | Functional element test tool and method |
AU2002365045A1 (en) | 2001-12-19 | 2003-07-09 | Rance Cleaveland | System and method for automated test-case generation for software |
US7237231B2 (en) * | 2003-03-10 | 2007-06-26 | Microsoft Corporation | Automatic identification of input values that expose output failures in a software object |
US7779036B2 (en) * | 2004-02-19 | 2010-08-17 | Oracle International Corporation | Integration functionality for a test tool for application programming interfaces |
US20050268285A1 (en) * | 2004-05-25 | 2005-12-01 | International Business Machines Corporation | Object oriented GUI test automation |
EP1677197A1 (en) | 2004-12-31 | 2006-07-05 | ST Incard S.r.l. | Test case automatic generation method for testing proactive GSM applications on SIM card |
US20070092069A1 (en) * | 2005-10-21 | 2007-04-26 | Epiphany, Inc. | Method and system for testing enterprise applications |
US7433804B2 (en) * | 2005-11-04 | 2008-10-07 | Research In Motion Limited | Automated test script for communications server |
US20070168971A1 (en) | 2005-11-22 | 2007-07-19 | Epiphany, Inc. | Multi-tiered model-based application testing |
US8683446B2 (en) | 2007-07-09 | 2014-03-25 | International Business Machines Corporation | Generation of test cases for functional testing of applications |
US7793155B2 (en) * | 2007-07-12 | 2010-09-07 | International Business Machines Corporation | Automated software testing via multi-channel remote computing |
WO2009148481A1 (en) * | 2008-06-06 | 2009-12-10 | Sapient Corporation | Systems and methods for visual test authoring and automation |
US8627295B2 (en) * | 2009-10-09 | 2014-01-07 | General Electric Company | Methods and apparatus for testing user interfaces |
US9137183B2 (en) * | 2009-12-22 | 2015-09-15 | Cyara Solutions Pty Ltd | System and method for automated chat testing |
US20110214107A1 (en) * | 2010-03-01 | 2011-09-01 | Experitest, Ltd. | Method and system for testing graphical user interfaces |
GB201018991D0 (en) | 2010-11-10 | 2010-12-22 | Net Magnus Ltd | Opus |
US8893087B2 (en) * | 2011-08-08 | 2014-11-18 | Ca, Inc. | Automating functionality test cases |
US20130074043A1 (en) | 2011-09-21 | 2013-03-21 | Chengde Fu | Self Generating Automation System (SGAS) including framework for automation of software functional testing |
US8842123B2 (en) | 2011-10-26 | 2014-09-23 | Google Inc. | Automatically testing a program executable on a graphics card |
US8918760B2 (en) * | 2012-12-07 | 2014-12-23 | Sugarcrm Inc. | Test script generation for application image validation |
US9842044B2 (en) * | 2013-02-13 | 2017-12-12 | Sugarcrm Inc. | Commit sensitive tests |
US20170147480A1 (en) * | 2013-04-23 | 2017-05-25 | Google Inc. | Test script generation |
US9304892B2 (en) * | 2013-06-03 | 2016-04-05 | Sap Se | Determining behavior models |
US9934136B2 (en) | 2013-07-23 | 2018-04-03 | Landmark Graphics Corporation | Automated generation of scripted and manual test cases |
-
2013
- 2013-07-23 US US14/892,800 patent/US9934136B2/en not_active Expired - Fee Related
- 2013-07-23 DE DE112013007271.8T patent/DE112013007271T5/de not_active Ceased
- 2013-07-23 RU RU2015152169A patent/RU2015152169A/ru unknown
- 2013-07-23 CA CA2915116A patent/CA2915116C/en not_active Expired - Fee Related
- 2013-07-23 AU AU2013394952A patent/AU2013394952B2/en not_active Ceased
- 2013-07-23 MX MX2015017111A patent/MX2015017111A/es unknown
- 2013-07-23 BR BR112015031100A patent/BR112015031100A2/pt not_active IP Right Cessation
- 2013-07-23 GB GB1520857.2A patent/GB2530928A/en not_active Withdrawn
- 2013-07-23 WO PCT/US2013/051703 patent/WO2015012814A1/en active Application Filing
- 2013-07-23 CN CN201380077530.XA patent/CN105393226A/zh active Pending
- 2013-07-23 SG SG11201509527TA patent/SG11201509527TA/en unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1938690A (zh) * | 2004-01-13 | 2007-03-28 | 交响乐服务公司 | 将自动测试脚本持续转换成抽象测试用例表示的方法和*** |
CN101165658A (zh) * | 2006-10-18 | 2008-04-23 | 国际商业机器公司 | 自动生成可再现运行时问题的单元测试用例的方法和*** |
US20090077422A1 (en) * | 2007-09-19 | 2009-03-19 | Sunil Khaladkar | Method and system for accelerating test automation of software applications |
CN101436128A (zh) * | 2007-11-16 | 2009-05-20 | 北京邮电大学 | 软件测试用例自动生成方法及*** |
US20120117095A1 (en) * | 2010-11-09 | 2012-05-10 | Verisign, Inc. | Test Automation Tool For Domain Registration Systems |
US20130097586A1 (en) * | 2011-10-17 | 2013-04-18 | International Business Machines Corporation | System and Method For Automating Test Automation |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9934136B2 (en) | 2013-07-23 | 2018-04-03 | Landmark Graphics Corporation | Automated generation of scripted and manual test cases |
CN110162459A (zh) * | 2019-04-15 | 2019-08-23 | 深圳壹账通智能科技有限公司 | 测试案例生成方法、装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
GB2530928A (en) | 2016-04-06 |
WO2015012814A1 (en) | 2015-01-29 |
GB201520857D0 (en) | 2016-01-13 |
AU2013394952A1 (en) | 2016-01-07 |
SG11201509527TA (en) | 2015-12-30 |
BR112015031100A2 (pt) | 2017-07-25 |
DE112013007271T5 (de) | 2016-04-14 |
US9934136B2 (en) | 2018-04-03 |
RU2015152169A (ru) | 2017-08-29 |
MX2015017111A (es) | 2016-08-03 |
AU2013394952B2 (en) | 2017-09-21 |
US20160132426A1 (en) | 2016-05-12 |
CA2915116C (en) | 2019-03-12 |
CA2915116A1 (en) | 2015-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105393226A (zh) | 脚本测试案例和手动测试案例的自动生成 | |
US9959198B1 (en) | Simulated testing of API | |
CN111159049B (zh) | 接口自动化测试方法及*** | |
US9239705B2 (en) | Method and apparatus for customized software development kit (SDK) generation | |
EP3115902B1 (en) | Framework for automated testing of mobile apps | |
US8862940B2 (en) | Integrated fuzzing | |
US11449348B2 (en) | Pre/post deployment customization | |
US20140173454A1 (en) | Method and system for designing, deploying and executing transactional multi-platform mobile applications | |
CN108304201A (zh) | 对象更新方法、装置及设备 | |
CN109783388A (zh) | Ui自动化测试方法、装置及电子设备 | |
CN110716853A (zh) | 一种测试脚本录制方法、应用程序测试方法和相关装置 | |
JP7280388B2 (ja) | カスタマイズされた人工知能生産ラインを実行する装置及び方法、機器及び媒体 | |
Akour et al. | Mobile software testing: Thoughts, strategies, challenges, and experimental study | |
CN113791765A (zh) | 云服务的资源编排方法、装置、设备及存储介质 | |
US9477582B2 (en) | Executable software specification generation | |
US20140005974A1 (en) | Automatically modifying a test for a program on multiple electronic devices | |
US9787552B2 (en) | Operation process creation program, operation process creation method, and information processing device | |
US20220206929A1 (en) | Managing a global network of virtual testers | |
CN108763296B (zh) | 一种在线查看和编辑的数据库结构生成方法及装置 | |
CN114721931B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
US9875290B2 (en) | Method, system and computer program product for using an intermediation function | |
Sarmota et al. | Cross Platform Mobile Application Development | |
CN108153525B (zh) | 一种构建交互界面的方法、装置及电子设备 | |
Danylov | Methodology for improving programs based on means of code generation by artificial intelligence | |
CN109525638A (zh) | 一种实时发送实验数据的方法、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160309 |
|
WD01 | Invention patent application deemed withdrawn after publication |