CN103593284A - 一种测试方法及装置 - Google Patents

一种测试方法及装置 Download PDF

Info

Publication number
CN103593284A
CN103593284A CN201310483189.XA CN201310483189A CN103593284A CN 103593284 A CN103593284 A CN 103593284A CN 201310483189 A CN201310483189 A CN 201310483189A CN 103593284 A CN103593284 A CN 103593284A
Authority
CN
China
Prior art keywords
application program
current
data
described current
result
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
CN201310483189.XA
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.)
SHANGHAI MUSE INFORMATION SCIENCE & TECHNOLOGY CO., LTD.
Original Assignee
Shanghai Ruanzhi Information Science & Technology 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 Shanghai Ruanzhi Information Science & Technology Co Ltd filed Critical Shanghai Ruanzhi Information Science & Technology Co Ltd
Priority to CN201310483189.XA priority Critical patent/CN103593284A/zh
Publication of CN103593284A publication Critical patent/CN103593284A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本申请公开了一种测试方法及装置,所述方法包括依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系,该所述流转关系包括每个应用程序与前端界面之间的数据交互顺序及交互参数;依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。本申请无需等待前端界面开发完成,只需利用其界面设计需求数据得到每个应用程序之间的数据交互顺序及交互参数,进而模拟前端界面与每个应用程序的交互过程,实现对每个应用程序的测试,相对于现有技术中需要等待前端界面开发完成导致测试效率较低的情况,本申请明显节省了等待前端界面开发完成的时间,提高了对应用程序的测试效率。

Description

一种测试方法及装置
技术领域
本申请涉及应用程序测试技术领域,特别涉及一种测试方法及装置。
背景技术
目前SaaS软件模式从技术角度而言,是将软件项目分成一前端界面及后端多个webservice应用程序。
在对软件项目的多个webservice进行测试时,需要将前端界面与后端的多个webservice进行集成之后进行整体测试,进而完成对每个webservice的测试。但在这种测试方案的实际应用中,后端开发人员在开发下一个新的webservice之前,先前编写的webservice需要等待前端开发人员依据界面设计需求完成相应界面之后才能由测试人员进行测试,同时后端开发人员需要经常暂停当前工作去修复先前的webservice中的bug,使得测试效率明显较低。
发明内容
本申请所要解决的技术问题是提供一种测试方法及装置,用以解决现有技术中对软件项目的后端webservice进行测试时,需要将前端界面与后端webservice进行集成后才能进行测试,使得测试效率较低的技术问题。
本申请提供了一种测试方法,包括:
依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系,所述流转关系包括每个所述应用程序与所述前端界面之间的数据交互顺序及交互参数;
依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。
上述方法,优选的,依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试,包括:
依据所述数据交互顺序,确定当前应用程序;
确定所述当前应用程序对应的当前交互参数;
以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据;
依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序;
依据所述当前测试结果数据确定所述当前应用程序对应的当前交互参数;
以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,返回执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序,直到所述当前应用程序的下一个应用程序为空。
上述方法,优选的,在所述得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据之后,在所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序之前,所述方法可以包括:
对所述当前测试结果数据进行数据结构验证及数据内容验证操作,得到当前验证结果;
判断所述当前验证结果是否表明所述当前应用程序中有缺陷存在,如果是,依据所述当前验证结果获取当前修复指令,依据所述当前修复指令对所述当前应用程序进行修复,将修复后的应用程序作为当前应用程序,返回执行所述以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,直到所述当前验证结果表明所述当前应用程序测试成功,执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序;
若判断出所述当前验证结果未表明所述当前应用程序中有缺陷存在,返回执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序。
上述方法,优选的,所述对所述当前测试结果数据进行数据结构验证及数据内容验证操作,得到当前验证结果,包括:
确定所述当前测试结果数据中的每个数据项;
对每个所述数据项的类型进行结构验证,得到第一验证结果;
对每个所述数据项的值进行内容验证,得到第二验证结果;
将所述第一验证结果及所述第二验证结果组合,得到所述当前测试结果数据的当前验证结果。
本申请还提供了一种测试装置,包括:
流转关系生成单元,用于依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系,所述流转关系包括每个所述应用程序与所述前端界面之间的数据交互顺序及交互参数;
应用程序测试单元,用于依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。
上述装置,优选的,所述应用程序测试单元包括:
当前程序确定子单元,用于依据所述数据交互顺序,确定当前应用程序;
当前参数确定子单元,用于确定所述当前应用程序对应的当前交互参数;
当前程序运行子单元,用于以所述当前交互参数为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据;
当前程序更新子单元,用于依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序;
当前参数更新子单元,用于依据所述当前测试结果数据确定所述当前应用程序对应的当前交互参数;
更新程序运行子单元,用于以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,触发所述当前程序更新子单元,直到所述当前应用程序的下一个应用程序为空。
上述装置,优选的,所述应用程序测试单元还包括:
测试数据验证子单元,用于在所述当前程序运行子单元或所述更新程序运行子单元得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据之后,在所述当前程序更新子单元确定所述当前应用程序的下一个应用程序作为当前应用程序之前,对所述当前测试结果数据进行数据结果验证及数据内容验证操作,得到当前验证结果;
验证结果判定子单元,用于判断所述当前验证结果是否表明所述当前应用程序中有缺陷存在,如果是,触发当前程序修复子单元,否则,触发所述更新程序运行子单元;
当前程序修复子单元,用于依据所述当前验证结果获取当前修复指令,依据所述当前修复指令对所述当前应用程序进行修复,将修复后的应用程序作为当前应用程序,触发与所述测试数据验证子单元对应的所述当前程序运行子单元或所述更新程序运行子单元,直到所述当前验证结果表明所述当前应用程序测试成功,触发所述更新程序运行子单元。
上述装置,优选的,所述测试数据验证子单元包括:
数据项确定模块,用于确定所述当前测试结果数据中的每个数据项;
结构验证模块,用于对每个所述数据项的类型进行结构验证,得到第一验证结果;
内容验证模块,用于对每个所述数据项的值进行内容验证,得到第二验证结果;
验证组合模块,用于将所述第一验证结果及所述第二验证结果组合,得到所述当前测试结果数据的当前验证结果。
由上述方案可知,本申请提供的一种测试方法及装置,通过依据待生成前端界面的界面设计需求数据生成每个待测试的应用程序之间的流转关系,该流转关系包含有每个应用程序与前端界面之间的数据交互顺序及交互参数,进而依据该数据交互顺序,以每个应用程序的交互参数作为其测试参数依次对每个应用程序进行测试,即为本申请通过模拟前端界面与每个应用程序的交互流程,实现对每个应用程序以其各自对应的测试参数进行测试的目的。本申请无需等待前端界面开发完成,只需利用其界面设计需求数据得到每个应用程序之间的数据交互顺序及交互参数,进而模拟前端界面与每个应用程序的交互过程,实现对每个应用程序的测试,相对于现有技术中需要等待应用程序对应软件项目的前端界面开发完成之后方能进行应用程序测试,导致测试效率较低的情况,本申请明显节省了等待前端界面开发完成的时间,提高了对应用程序的测试效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种测试方法实施例一的流程图;
图2为本申请提供的一种测试方法实施例二的部分流程图;
图3为本申请提供的一种测试方法实施例三的部分流程图;
图4为本申请实施例三的另一部分流程图;
图5为本申请提供的一种测试装置实施例四的结构示意图;
图6为本申请提供的一种测试装置实施例五的部分结构示意图;
图7为本申请提供的一种测试装置实施例六的部分结构示意图;
图8为本申请提供的一种测试装置实施例六的另一部分结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,为本申请提供的一种测试方法实施例一的流程图,所述方法适用于对软件项目中后端应用程序webservice的测试,所述方法可以包括:
步骤101:依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系。
其中,所述流转关系包括每个所述应用程序与所述前端界面之间的数据交互顺序及交互参数。
所述数据交互顺序是指,前端界面与应用程序进行数据交互时的运行顺序,例如,某一软件项目中,用户在其前端界面输入键入数据,前端界面子接收到该键入数据之后,由该键入数据生成第一指令,由第一指令作为第一交互参数触发对应的应用程序执行其功能,在该应用程序执行完其功能之后可能生成一返回参数,触发另一个应用程序接收该返回参数并执行其功能,进而得到另一返回参数,由该另一个应用程序将其返回参数返回至前端界面,由前端界面依据其接收到的返回参数和/或其他用户输入或点击的数据,触发其他应用程序,以此类推,前述中应用程序的执行顺序即前述的数据交互顺序,而每个应用程序在被触发运行时的触发指令均作为其交互参数,而每个应用程序在其运行结束后生成的返回参数即可作为该应用程序的下一个应用程序的交互参数。
步骤102:依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。
其中,所述步骤102中以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试,即为:以每个所述应用程序的交互参数作为其运行参数依次运行每个所述应用程序,实现对每个所述应用程序的测试。
由上述方案可知,本申请提供的一种测试方法实施例一,通过依据待生成前端界面的界面设计需求数据生成每个待测试的应用程序之间的流转关系,该流转关系包含有每个应用程序与前端界面之间的数据交互顺序及交互参数,进而依据该数据交互顺序,以每个应用程序的交互参数作为其测试参数依次对每个应用程序进行测试,即为本申请通过模拟前端界面与每个应用程序的交互流程,实现对每个应用程序以其各自对应的测试参数进行测试的目的。本申请实施例无需等待前端界面开发完成,只需利用其界面设计需求数据得到每个应用程序之间的数据交互顺序及交互参数,进而模拟前端界面与每个应用程序的交互过程,实现对每个应用程序的测试,相对于现有技术中需要等待应用程序对应软件项目的前端界面开发完成之后方能进行应用程序测试,导致测试效率较低的情况,本申请明显节省了等待前端界面开发完成的时间,提高了对应用程序的测试效率。
参考图2,为本申请提供的一种测试方法实施例二中所述步骤102的流程图,所述步骤102可以包括:
步骤201:依据所述数据交互顺序,确定当前应用程序。
其中,所述步骤201可以理解为,确定所述数据交互顺序中的第一个应用程序作为当前应用程序。
步骤202:确定所述当前应用程序的当前交互参数。
其中,所述步骤202可以通过以下方式实现:在所述步骤101中生成的交互参数中,确定与该当前应用程序相对应的交互参数作为当前交互参数。
步骤203:以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据。
所述当前测试结果数据可以理解为前文中示例中应用程序运行生成的返回参数等。
步骤204:依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序。
步骤205:依据所述当前测试结果数据确定所述当前应用程序对应的当前交互参数。
其中,所述步骤205可以理解为:在所述步骤101生成的交互参数中,依据所述当前测试结果数据确定当前应用户程序的当前交互参数,其中,所述当前测试结果数据为所述当前应用程序的前一个应用程序的运行结果,也就是说,依据所述数据交互顺序,从第二个应用程序开始,每个应用程序的当前交互参数均由其前一个应用程序的运行结果决定。
步骤206:以所述当前交互参数作为测试参数,运行所述当前运行程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,返回执行所述步骤204,直到所述当前应用程序的下一个应用程序为空。
由上述步骤102的实现方案可知,本申请实施例二通过将软件项目中的每个待测试的应用程序以流程图的形式串联,在不需要前端界面开发完成的情况下,以图形的方式依据前端界面的界面设计需求数据及应用程序的交互参数设置条件转移,实现模拟前端界面与应用程序之间数据交互测试的目的。
其中,在对每个应用程序进行测试即每个应用程序运行完成之后,需要对每个应用程序的运行结果即测试结果进行验证,进而对出现缺陷的应用程序进行修复,由此,参考图3,为本申请提供的一种测试方法实施例三中所述步骤102的流程图,所述步骤102在实现时,在所述步骤203或所述步骤206得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据之后,在所述步骤204之前,所述步骤102还可以包括以下步骤:
步骤207:对所述当前测试结果数据进行数据结构验证及数据内容验证操作,得到当前验证结果。
其中,如图4中所示,所述步骤207可以通过以下步骤实现:
步骤401:确定所述当前测试结果数据中的每个数据项。
步骤402:对每个所述数据项的类型进行结构验证,得到第一验证结果。
其中,所述第一验证结果即为对所述当前测试结果数据的数据项类型进行验证的结果,即验证该当前测试结果数据中包含哪些信息,而非其信息值。
步骤403:对每个所述数据项的值进行内容验证,得到第二验证结果。
其中,所述第二验证结果即为对当前测试结果数据进行值内容进行验证的结果。
步骤404:将所述第一验证结果及所述第二验证结果组合,得到所述当前测试结果数据的当前验证结果。
步骤208:判断所述当前验证结果是否表明所述当前应用程序中有缺陷存在,如果是,执行步骤209,否则,执行所述步骤204;
步骤209:依据所述当前验证结果获取当前修复指令,依据所述当前修复指令对所述当前应用程序进行修复,将修复后的应用程序作为当前应用程序,返回执行所述当前应用程序对应的所述步骤203或步骤206,直到所述当前验证结果表明所述当前应用程序测试成功,执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序,执行步骤204。
其中,所述当前修复指令可以为程序开发人员根据当前验证结果进行编制,由本申请在所述步骤209中依据所述当前验证结果进行获取。所述当前修复指令中包含有能够对出现缺陷的当前应用程序进行修复的代码内容。
如图3中,若所述步骤207只在所述步骤203后被触发执行时,在所述步骤209将修复后的应用程序作为当前应用程序时,返回执行所述步骤203(线路1),若所述步骤207在所述步骤203被触发执行并在当前验证结果表明当前应用程序中无缺陷存在后,在所述步骤206后被触发再次执行时,所述步骤209中将修复后的应用程序作为当前应用程序返回执行所述步骤206,完成第二个或之后的某一应用程序的测试(线路2),之后再执行所述步骤204(线路3),继续下一个应用程序的测试。
由上述方案可知,本申请提供的一种测试方法实施例三,在对每个应用程序进行测试之后,对其各自的测试结果数据进行验证,进而对出现缺陷的应用程序进行修复,直到其验证结果表明该应用程序不存在缺陷为止,继续对下一个应用程序的测试及验证修复过程,完成对整个软件项目中后端应用程序webservice的测试。
参考图5,为本申请提供的一种测试装置实施例四的结构示意图,所述装置适用于对软件项目中后端应用程序webservice的测试,所述装置包括:
流转关系生成单元501,用于依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系。
其中,所述流转关系包括每个所述应用程序与所述前端界面之间的数据交互顺序及交互参数。
所述数据交互顺序是指,前端界面与应用程序进行数据交互时的运行顺序,例如,某一软件项目中,用户在其前端界面输入键入数据,前端界面子接收到该键入数据之后,由该键入数据生成第一指令,由第一指令作为第一交互参数触发对应的应用程序执行其功能,在该应用程序执行完其功能之后可能生成一返回参数,触发另一个应用程序接收该返回参数并执行其功能,进而得到另一返回参数,由该另一个应用程序将其返回参数返回至前端界面,由前端界面依据其接收到的返回参数和/或其他用户输入或点击的数据,触发其他应用程序,以此类推,前述中应用程序的执行顺序即前述的数据交互顺序,而每个应用程序在被触发运行时的触发指令均作为其交互参数,而每个应用程序在其运行结束后生成的返回参数即可作为该应用程序的下一个应用程序的交互参数。
应用程序测试单元502,用于依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。
其中,所述应用程序测试单元502中以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试,即为:以每个所述应用程序的交互参数作为其运行参数依次运行每个所述应用程序,实现对每个所述应用程序的测试。
由上述方案可知,本申请提供的一种测试装置实施例四,通过依据待生成前端界面的界面设计需求数据生成每个待测试的应用程序之间的流转关系,该流转关系包含有每个应用程序与前端界面之间的数据交互顺序及交互参数,进而依据该数据交互顺序,以每个应用程序的交互参数作为其测试参数依次对每个应用程序进行测试,即为本申请通过模拟前端界面与每个应用程序的交互流程,实现对每个应用程序以其各自对应的测试参数进行测试的目的。本申请实施例无需等待前端界面开发完成,只需利用其界面设计需求数据得到每个应用程序之间的数据交互顺序及交互参数,进而模拟前端界面与每个应用程序的交互过程,实现对每个应用程序的测试,相对于现有技术中需要等待应用程序对应软件项目的前端界面开发完成之后方能进行应用程序测试,导致测试效率较低的情况,本申请明显节省了等待前端界面开发完成的时间,提高了对应用程序的测试效率。
参考图6,为本申请提供的一种测试装置实施例五中应用程序测试单元502的结构示意图,其中,所述应用程序测试单元502可以包括:
当前程序确定子单元521,用于依据所述数据交互顺序,确定当前应用程序。
其中,所述当前程序确定子单元521可以理解为,确定所述数据交互顺序中的第一个应用程序作为当前应用程序。
当前参数确定子单元522,用于确定所述当前应用程序对应的当前交互参数。
其中,所述当前参数确定子单元522可以通过以下方式实现:在所述流转关系生成单元501中生成的交互参数中,确定与该当前应用程序相对应的交互参数作为当前交互参数。
当前程序运行子单元523,用于以所述当前交互参数为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据。
所述当前测试结果数据可以理解为前文中示例中应用程序运行生成的返回参数等。
当前程序更新子单元524,用于依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序。
当前参数更新子单元525,用于依据所述当前测试结果数据确定所述当前应用程序对应的当前交互参数。
其中,所述当前参数更新子单元525可以理解为:在所述流转关系生成单元501生成的交互参数中,依据所述当前测试结果数据确定当前应用户程序的当前交互参数,其中,所述当前测试结果数据为所述当前应用程序的前一个应用程序的运行结果,也就是说,依据所述数据交互顺序,从第二个应用程序开始,每个应用程序的当前交互参数均由其前一个应用程序的运行结果决定。
更新程序运行子单元526,用于以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,触发所述当前程序更新子单元524,直到所述当前应用程序的下一个应用程序为空。
由上述应用程序测试单元502的实现方案可知,本申请实施例五通过将软件项目中的每个待测试的应用程序以流程图的形式串联,在不需要前端界面开发完成的情况下,以图形的方式依据前端界面的界面设计需求数据及应用程序的交互参数设置条件转移,实现模拟前端界面与应用程序之间数据交互测试的目的。
其中,在对每个应用程序进行测试即每个应用程序运行完成之后,需要对每个应用程序的运行结果即测试结果进行验证,进而对出现缺陷的应用程序进行修复,由此,参考图7,为本申请提供的一种测试装置实施例六中所述应用程序测试单元502的结构示意图,其中,基于如图6中所示的结构,所述应用程序测试单元502还可以包括:
测试数据验证子单元527,用于在所述当前程序运行子单元523或所述更新程序运行子单元526得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据之后,在所述当前程序更新子单元524确定所述当前应用程序的下一个应用程序作为当前应用程序之前,对所述当前测试结果数据进行数据结果验证及数据内容验证操作,得到当前验证结果。
其中,如图8中所示,所述测试数据验证子单元527可以包括:
数据项确定模块5271,用于确定所述当前测试结果数据中的每个数据项。
结构验证模块5272,用于对每个所述数据项的类型进行结构验证,得到第一验证结果。
其中,所述第一验证结果即为对所述当前测试结果数据的数据项类型进行验证的结果,即验证该当前测试结果数据中包含哪些信息,而非其信息值。
内容验证模块5273,用于对每个所述数据项的值进行内容验证,得到第二验证结果。
其中,所述第二验证结果即为对当前测试结果数据进行值内容进行验证的结果。
验证组合模块5274,用于将所述第一验证结果及所述第二验证结果组合,得到所述当前测试结果数据的当前验证结果。
验证结果判定子单元528,用于判断所述当前验证结果是否表明所述当前应用程序中有缺陷存在,如果是,触发当前程序修复子单元529,否则,触发所述更新程序运行子单元524。
当前程序修复子单元529,用于依据所述当前验证结果获取当前修复指令,依据所述当前修复指令对所述当前应用程序进行修复,将修复后的应用程序作为当前应用程序,触发与所述测试数据验证子单元527对应的所述当前程序运行子单元523或所述更新程序运行子单元526,直到所述当前验证结果表明所述当前应用程序测试成功,触发所述更新程序运行子单元524。
其中,所述当前修复指令可以为程序开发人员根据当前验证结果进行编制,由本申请在所述当前程序修复子单元529中依据所述当前验证结果进行获取。所述当前修复指令中包含有能够对出现缺陷的当前应用程序进行修复的代码内容。
需要说明的是,若所述测试数据验证子单元527只被所述当前程序运行子单元523触发运行时,在所述当前程序修复子单元529将修复后的应用程序作为当前应用程序时,触发所述当前程序运行子单元(线路1),若所述测试数据验证子单元527在所述当前程序运行子单元523被触发运行并在所述验证结果判定子单元528中当前验证结果表明当前应用程序中无缺陷存在后,被所述更新程序运行子单元526被触发再次运行时,所述当前程序修复子单元529将修复后的应用程序作为当前应用程序后触发所述更新程序运行子单元526,完成第二个或之后的某一应用程序的测试(线路2),之后再执行所述步骤204(线路3),继续下一个应用程序的测试。由上述方案可知,本申请提供的一种测试装置实施例六,在对每个应用程序进行测试之后,对其各自的测试结果数据进行验证,进而对出现缺陷的应用程序进行修复,直到其验证结果表明该应用程序不存在缺陷为止,继续对下一个应用程序的测试及验证修复过程,完成对整个软件项目中后端应用程序webservice的测试。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种测试方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种测试方法,其特征在于,包括:
依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系,所述流转关系包括每个所述应用程序与所述前端界面之间的数据交互顺序及交互参数;
依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。
2.根据权利要求1所述的方法,其特征在于,依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试,包括:
依据所述数据交互顺序,确定当前应用程序;
确定所述当前应用程序对应的当前交互参数;
以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据;
依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序;
依据所述当前测试结果数据确定所述当前应用程序对应的当前交互参数;
以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,返回执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序,直到所述当前应用程序的下一个应用程序为空。
3.根据权利要求2所述的方法,其特征在于,在所述得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据之后,在所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序之前,所述方法可以包括:
对所述当前测试结果数据进行数据结构验证及数据内容验证操作,得到当前验证结果;
判断所述当前验证结果是否表明所述当前应用程序中有缺陷存在,如果是,依据所述当前验证结果获取当前修复指令,依据所述当前修复指令对所述当前应用程序进行修复,将修复后的应用程序作为当前应用程序,返回执行所述以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,直到所述当前验证结果表明所述当前应用程序测试成功,执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序;
若判断出所述当前验证结果未表明所述当前应用程序中有缺陷存在,返回执行所述依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序。
4.根据权利要求3所述的方法,其特征在于,所述对所述当前测试结果数据进行数据结构验证及数据内容验证操作,得到当前验证结果,包括:
确定所述当前测试结果数据中的每个数据项;
对每个所述数据项的类型进行结构验证,得到第一验证结果;
对每个所述数据项的值进行内容验证,得到第二验证结果;
将所述第一验证结果及所述第二验证结果组合,得到所述当前测试结果数据的当前验证结果。
5.一种测试装置,其特征在于,包括:
流转关系生成单元,用于依据待生成前端界面的界面设计需求数据,生成每个待测试的应用程序之间的流转关系,所述流转关系包括每个所述应用程序与所述前端界面之间的数据交互顺序及交互参数;
应用程序测试单元,用于依据所述数据交互顺序,以每个所述应用程序的交互参数作为其测试参数依次对每个所述应用程序进行测试。
6.根据权利要求5所述的装置,其特征在于,所述应用程序测试单元包括:
当前程序确定子单元,用于依据所述数据交互顺序,确定当前应用程序;
当前参数确定子单元,用于确定所述当前应用程序对应的当前交互参数;
当前程序运行子单元,用于以所述当前交互参数为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据;
当前程序更新子单元,用于依据所述数据交互顺序,确定所述当前应用程序的下一个应用程序作为当前应用程序;
当前参数更新子单元,用于依据所述当前测试结果数据确定所述当前应用程序对应的当前交互参数;
更新程序运行子单元,用于以所述当前交互参数作为测试参数,运行所述当前应用程序,得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据,触发所述当前程序更新子单元,直到所述当前应用程序的下一个应用程序为空。
7.根据权利要求6所述的装置,其特征在于,所述应用程序测试单元还包括:
测试数据验证子单元,用于在所述当前程序运行子单元或所述更新程序运行子单元得到所述当前应用程序的运行结果作为所述当前应用程序的当前测试结果数据之后,在所述当前程序更新子单元确定所述当前应用程序的下一个应用程序作为当前应用程序之前,对所述当前测试结果数据进行数据结果验证及数据内容验证操作,得到当前验证结果;
验证结果判定子单元,用于判断所述当前验证结果是否表明所述当前应用程序中有缺陷存在,如果是,触发当前程序修复子单元,否则,触发所述更新程序运行子单元;
当前程序修复子单元,用于依据所述当前验证结果获取当前修复指令,依据所述当前修复指令对所述当前应用程序进行修复,将修复后的应用程序作为当前应用程序,触发与所述测试数据验证子单元对应的所述当前程序运行子单元或所述更新程序运行子单元,直到所述当前验证结果表明所述当前应用程序测试成功,触发所述更新程序运行子单元。
8.根据权利要求7所述的装置,其特征在于,所述测试数据验证子单元包括:
数据项确定模块,用于确定所述当前测试结果数据中的每个数据项;
结构验证模块,用于对每个所述数据项的类型进行结构验证,得到第一验证结果;
内容验证模块,用于对每个所述数据项的值进行内容验证,得到第二验证结果;
验证组合模块,用于将所述第一验证结果及所述第二验证结果组合,得到所述当前测试结果数据的当前验证结果。
CN201310483189.XA 2013-10-15 2013-10-15 一种测试方法及装置 Pending CN103593284A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310483189.XA CN103593284A (zh) 2013-10-15 2013-10-15 一种测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310483189.XA CN103593284A (zh) 2013-10-15 2013-10-15 一种测试方法及装置

Publications (1)

Publication Number Publication Date
CN103593284A true CN103593284A (zh) 2014-02-19

Family

ID=50083435

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310483189.XA Pending CN103593284A (zh) 2013-10-15 2013-10-15 一种测试方法及装置

Country Status (1)

Country Link
CN (1) CN103593284A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104820672A (zh) * 2015-03-19 2015-08-05 广东小天才科技有限公司 终端模拟开发的实现方法和***
CN105808416A (zh) * 2014-12-27 2016-07-27 南车株洲电力机车研究所有限公司 一种人机图形交互界面的自动化测试方法和***

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808416A (zh) * 2014-12-27 2016-07-27 南车株洲电力机车研究所有限公司 一种人机图形交互界面的自动化测试方法和***
CN105808416B (zh) * 2014-12-27 2018-04-13 南车株洲电力机车研究所有限公司 一种人机图形交互界面的自动化测试方法和***
CN104820672A (zh) * 2015-03-19 2015-08-05 广东小天才科技有限公司 终端模拟开发的实现方法和***
CN104820672B (zh) * 2015-03-19 2019-04-19 广东小天才科技有限公司 终端模拟开发的实现方法和***

Similar Documents

Publication Publication Date Title
Gao et al. A component testability model for verification and measurement
CN104268310B (zh) 使用专用图形界面调用uvm验证环境的方法
CN104636254A (zh) 生成测试用例的方法和装置、测试方法和设备
US7895575B2 (en) Apparatus and method for generating test driver
US20140032966A1 (en) Hardware verification using ACCELERATION platform
CN105138461A (zh) 一种应用程序的接口测试方法及装置
KR101335912B1 (ko) 테스트 통합 관리 시스템 및 방법
Kim et al. Performance testing of mobile applications at the unit test level
US10592703B1 (en) Method and system for processing verification tests for testing a design under test
Xie Developing cost-effective model-based techniques for GUI testing
CN105511977A (zh) 一种车载导航***测试方法与装置
Nugroho et al. Assessing uml design metrics for predicting fault-prone classes in a java system
CN110321292A (zh) 芯片测试方法、装置、电子设备及计算机可读存储介质
CN101263498A (zh) 用于集成电路设计仿真的断言的开发
CN102968371A (zh) 测试java api单元组件的方法及装置
US8140315B2 (en) Test bench, method, and computer program product for performing a test case on an integrated circuit
CN114548027A (zh) 在验证***中追踪信号的方法、电子设备及存储介质
CN103593284A (zh) 一种测试方法及装置
US20140281719A1 (en) Explaining excluding a test from a test suite
KR100777103B1 (ko) 테스트 드라이버 생성 장치 및 방법
CN115176233B (zh) 以确定性顺序执行测试
CN112765018B (zh) 一种仪器仪表调试***及方法
CN108845945A (zh) 应用测试优化方法及装置
US7277840B2 (en) Method for detecting bus contention from RTL description
CN104636258B (zh) 面向可重构支撑软件的可信测试方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: SHANGHAI MIUSI INFORMATION TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SHANGHAI RUANZHI INFORMATION SCIENCE + TECHNOLOGY CO., LTD.

Effective date: 20140922

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 200072 ZHABEI, SHANGHAI TO: 200042 ZHABEI, SHANGHAI

TA01 Transfer of patent application right

Effective date of registration: 20140922

Address after: 200042, room 7, building 700, Wanrong Road, Zhabei District, Shanghai,

Applicant after: SHANGHAI MUSE INFORMATION SCIENCE & TECHNOLOGY CO., LTD.

Address before: Zhabei District ejon 200072 Shanghai 777 Lane 55, room 1503

Applicant before: Shanghai Ruanzhi Information Science & Technology Co., Ltd.

WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140219