CN104731566A - 集成开发环境测试装置、方法及系统 - Google Patents
集成开发环境测试装置、方法及系统 Download PDFInfo
- Publication number
- CN104731566A CN104731566A CN201310705522.7A CN201310705522A CN104731566A CN 104731566 A CN104731566 A CN 104731566A CN 201310705522 A CN201310705522 A CN 201310705522A CN 104731566 A CN104731566 A CN 104731566A
- Authority
- CN
- China
- Prior art keywords
- trm
- parameter value
- pending
- name
- parameter
- 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.)
- Granted
Links
Abstract
本发明公开了一种集成开发环境测试装置、方法及系统,属于软件测试领域。所述装置包括:获取模块,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值,所述待执行方法用于执行至少一个测试动作;处理模块,用于根据所述获取模块获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;发送模块,用于向集成开发环境平台发送所述处理模块生成的所述测试请求信息,以使所述集成开发环境平台根据所述测试请求信息执行所述待执行方法。使用该装置进行集成开发环境测试,维护方便,调试简单,开发效率高。
Description
技术领域
本发明涉及软件测试领域,特别涉及一种集成开发环境测试装置、方法及系统。
背景技术
集成开发环境(Integrated Development Environment,简称“IDE”)是用于程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具,集成了代码编写功能、分析功能、编译功能、debug功能等一体化的开发软件套。
Eclipse就是这样一个IDE,作为开发工具,它已经广泛地被应用到软件研发过程中。开发人员可以以插件的形式为Eclipse增加新功能,为了保证这些功能的正确性和可用性,需要有针对性的对其进行测试。这些功能最终是通过图形用户界面(Graphical User Interface,简称“GUI”)控件呈现或触发的,因此,对IDE的测试,最终体现为对各种GUI控件的操作及结果验证。
现有的IDE测试方法,是在测试管理平台中设置测试用例,在Eclipse中集成Junit插件,通过编写并执行与管理平台中的测试用例相对应的Junit测试用例对Eclipse GUI进行自动化测试。Junit测试用例由测试人员编写,通过调用GUI接口,模拟鼠标操作并获取界面的相应变化,验证功能是否正确。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
由于测试管理平台和Eclipse所在设备分别为不同的实体,并且可能位于不同的位置,Eclipse中的Junit测试用例难以和测试管理平台中的用例对应起来,维护非常不方便;测试管理平台无法控制Junit测试用例的执行,且Junit测试用例由Java代码实现,要求测试人员需要具备一定的Java代码能力,测试人员能力要求高;调试过程非常麻烦费时,每次改动,都需要重新启动运行态Eclipse查看效果,开发效率低。
发明内容
为了解决现有技术中用例维护不便、对测试人员能力要求高、开发效率低等问题,本发明实施例提供了一种集成开发环境测试装置、方法及系统。所述技术方案如下:
一方面,本发明实施例提供了一种集成开发环境测试装置,所述装置包括:
获取模块,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值;
处理模块,用于根据所述获取模块获取到的所述待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;
发送模块,用于发送所述处理模块生成的所述测试请求信息。
在本发明实施例的一种实现方式中,所述装置还包括:
接收模块,用于接收所述测试请求信息的返回结果,所述返回结果是根据所述测试请求信息执行所述待执行方法后生成的;
所述处理模块,还用于根据所述接收模块接收到的所述返回结果,判断测试是否成功并输出判断结果。
在本发明实施例的另一种实现方式中,所述返回结果包括日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
在本发明实施例的另一种实现方式中,
所述获取模块用于,获取自动化脚本,所述自动化脚本包括一个或多个所述待执行方法的方法名、类名、插件标识、参数类型和参数值,每个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
所述处理模块用于,根据获取到的自动化脚本生成测试请求信息。
另一方面,本发明实施例还提供了一种集成开发环境测试装置,所述装置包括:
接收模块,用于接收测试请求信息,所述测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
方法执行模块,用于根据所述测试请求信息执行所述待执行方法。
在本发明实施例的一种实现方式中,所述装置还包括:
日志管理模块,用于获取所述待执行方法执行过程中生成的日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
在本发明实施例的另一种实现方式中,
所述方法执行模块,还用于生成所述待执行方法的执行结果,所述待执行方法的执行结果包括所述日志信息,以及所述待执行方法执行过程中的返回值;
所述装置还包括:发送模块,用于发送所述待执行方法的执行结果。
在本发明实施例的另一种实现方式中,所述装置还包括:对象管理模块,用于获取并缓存所述待执行方法执行过程中返回的对象并生成所述对象的索引值,则所述返回值为值或者所述对象的索引值。
在本发明实施例的另一种实现方式中,所述装置还包括:方法处理器;
一个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
当一个所述待执行方法的所述参数值用于指示多个测试动作的执行时,所述方法执行模块,用于根据所述测试请求信息向所述方法处理器传递各个所述待执行方法的所述参数类型和所述参数值,并调用所述方法处理器采用所述参数类型和所述参数值执行所述方法处理器中预设的方法,所述预设的方法用于执行所述参数值对应的所述多个测试动作。
另一方面,本发明实施例还提供了一种集成开发环境测试方法,所述测试方法包括:
获取待执行方法的方法名、类名、插件标识、参数类型和参数值,所述待执行方法用于执行至少一个测试动作;
根据获取到的所述待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;
发送所述测试请求信息。
在本发明实施例的一种实现方式中,所述方法还包括:
接收所述测试请求信息的返回结果,所述返回结果是根据所述测试请求信息执行所述待执行方法后生成的;
根据接收到的所述返回结果,判断测试是否成功并输出判断结果。
在本发明实施例的另一种实现方式中,所述返回结果包括日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
在本发明实施例的另一种实现方式中,所述获取待执行方法的方法名、类名、插件标识、参数类型和参数值,包括:
获取自动化脚本,所述自动化脚本包括一个或多个所述待执行方法的方法名、类名、插件标识、参数类型和参数值,每个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
根据获取到的自动化脚本生成测试请求信息。
另一方面,本发明实施例还提供了一种集成开发环境测试方法,所述方法包括:
接收测试请求信息,所述测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
根据所述测试请求信息执行所述待执行方法。
在本发明实施例的一种实现方式中,所述方法还包括:
获取所述待执行方法执行过程中生成的日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
在本发明实施例的另一种实现方式中,所述方法还包括:
生成所述待执行方法的执行结果,所述待执行方法的执行结果包括所述日志信息,以及所述待执行方法执行过程中的返回值;
发送所述待执行方法的执行结果。
在本发明实施例的另一种实现方式中,所述方法还包括:获取并缓存所述待执行方法执行过程中返回的对象,并生成所述对象的索引值;
则所述返回值为值或者所述对象的索引值。
在本发明实施例的另一种实现方式中,一个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
当一个所述待执行方法的所述参数值用于指示多个测试动作的执行时,所述根据所述测试请求信息执行所述待执行方法,包括:
根据所述测试请求信息向方法处理器传递各个所述待执行方法的所述参数类型和所述参数值,并调用所述方法处理器采用所述参数类型和所述参数值执行所述方法处理器中预设的方法,所述预设的方法用于执行所述参数值对应的所述多个测试动作。
另一方面,本发明实施例还提供了一种集成开发环境测试系统,所述系统包括集成开发环境测试管理平台和集成开发环境平台,
所述集成开发环境测试管理平台,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值;根据获取到的所述待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;向所述集成开发环境平台发送所述测试请求信息;
所述集成开发环境平台,用于接收所述集成开发环境测试管理平台发送的所述测试请求信息;根据所述测试请求信息执行所述待执行方法。
在本发明实施例的一种实现方式中,所述集成开发环境测试管理平台还用于接收所述测试请求信息的返回结果,所述返回结果是所述集成开发环境平台根据所述测试请求信息执行所述待执行方法后生成的;
根据接收到的所述返回结果,判断测试是否成功并输出判断结果。
本发明实施例提供的技术方案带来的有益效果是:
通过发送包括待执行方法的方法名、类名、插件标识、参数类型和参数值在内的测试请求信息,从而可以使收到测试请求信息的IDE执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或动作命令(Action Word,简称“AW”,详见实施例二)对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的IDE测试装置的结构示意图;
图2是本发明实施例二提供的IDE测试装置的结构示意图;
图3是本发明实施例提供的IDE测试装置的结构示意图;
图4是本发明实施例三提供的IDE测试装置的结构示意图;
图5是本发明实施例四提供的IDE测试装置的结构示意图;
图6是本发明实施例提供的IDE测试装置的结构示意图;
图7是本发明实施例五提供的IDE测试方法流程图;
图8是本发明实施例六提供的IDE测试方法流程图;
图9是本发明实施例七提供的IDE测试方法流程图;
图10是本发明实施例八提供的IDE测试方法流程图;
图11是本发明实施例九提供的IDE测试系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种IDE测试装置,该装置可以是测试管理平台,或者设置在测试管理平台上,参见图1,该装置包括:
获取模块101,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值;
处理模块102,用于根据获取模块101获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,该测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
发送模块103,用于发送处理模块102生成的测试请求消息。
具体地,发送模块103用于向IDE平台发送处理模块102生成的测试请求信息,以使IDE平台根据测试请求信息执行测试请求信息中的待执行方法。
其中,待执行方法的方法名是指要执行的IDE(如Eclipse)中Junit插件方法或控件方法的名称;类名是指方法所在类的名称;插件标识(Identity,简称“ID”)是指类所在插件的ID;参数类型是指方法的参数类型,如String,int[],boolean;参数值是指方法的参数值,如{value1}{0;1;2}{false}。
本发明实施例中通过发送包括待执行方法的方法名、类名、插件标识、参数类型和参数值在内的测试请求信息,从而可以使收到测试请求信息的IDE执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高。
实施例二
本发明实施例提供了一种IDE测试装置,该装置可以是测试管理平台,或者设置在测试管理平台上,测试管理平台是指具备测试用例管理的平台,包括但不限于华为公司的测试管理服务系统(Test Management Service System,TMSS)。参见图2,该测试装置包括:
获取模块201,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值,该待执行方法用于执行至少一个测试动作;
处理模块202,用于根据获取模块获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,该测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
发送模块203,用于发送处理模块202生成的测试请求消息。
具体地,发送模块203用于向IDE平台发送处理模块202生成的测试请求信息,以使IDE平台根据测试请求信息执行测试请求信息中的待执行方法。
其中,待执行方法的方法名、类名、插件标识、参数类型和参数值既可以是用户输入的,也可以是用户根据预定的执行策略触发的。
进一步地,待执行方法的方法名是指要执行的IDE(如Eclipse)中Junit插件方法或控件方法的名称;类名是指方法所在类的名称;插件ID是指类所在插件的ID;参数类型是指方法的参数类型,如String,int[],boolean;参数值是指方法的参数值,如{value1}{0;1;2}{false}。
在本发明实施例的一种实现方式中,获取模块201可以用于,获取自动化脚本,自动化脚本包括一个或多个待执行方法的方法名、类名、插件标识、参数类型和参数值,每个待执行方法的参数值用于指示一个或多个测试动作的执行。自动化脚本包括连续的多个测试动作。
当参数值用于指示多个测试动作的执行时,优选将该参数值对应的多个测试动作封装为AW,从而便于工作人员编辑自动化脚本。
例如,在TMSS作为测试装置时,为了提升测试的效率,通常会事先将IDE中的GUI控件封装成对应的AW,如下拉框AW、按钮AW、菜单AW等,每个AW中主要包括控件定位方法名称、定位方法参数值、操作方法名称和操作方法参数值等内容,其中,定位方法名称是指用于对按钮、下拉框等进行定位的方法的名称,操作方法名称是指用于对前述定位的按钮或下拉框进行单击、双击等操作的方法的名称;工作人员根据测试步骤通过可视化的界面编辑器组合这些AW,从而生成自动化脚本。而IDE平台则可以根据,自动化脚本生成的测试请求信息中的方法名、类名、插件标识、参数类型和参数值定位控件,并执行操作方法。
相应地,处理模块202用于,根据获取到的自动化脚本生成测试请求信息。
测试请求信息可以包括一个待执行方法的方法名、类名、插件标识、参数类型和参数值,一个待执行方法可以包括多个测试动作,例如按钮点击测试方法可以包括按钮定位和点击操作两个测试动作,这两个测试动作通过测试请求信息中的参数值来表示,如:{控件定位方法应用程序编程接口(ApplicationProgramming Interface,简称“API”)}{控件定位方法参数值}{控件操作方法API}{控件操作方法参数值},相应地,每一个参数值与一个参数类型对应。
测试请求信息包括多个参数类型和多个参数值时,多个参数类型用分隔符隔开,分隔符为英文分号,也可为其他符号,如type1;type2;type3。多个参数值中的每个参数值用符号对包括,如{value1}{value2}{value3},此处符号对为大括号;如果参数值包含数组,则数组元素用分隔符隔开,如{value1}{value2}{value31;value32;value33};如果参数值为对象,则采用该对象的索引表示。
另外,一个测试请求信息中还可以包括多个方法名,多个方法名以字符串或者列表形式表示。每个方法名分别可以对应设置一个或多个类名、插件标识、参数类型和参数值。
处理模块202还用于对获取到的方法名、类名、插件标识、参数类型和参数值的格式进行校验,然后转换为可以发送的格式,即测试请求信息。
该测试请求信息通过网络发送至平台,发送方式可以为Socket(套接字)。
进一步地,该装置还包括:接收模块204,用于接收测试请求信息的返回结果,返回结果是根据所述测试请求信息执行所述待执行方法后生成的;
处理模块202,还用于根据接收模块接收到的返回结果,判断测试是否成功并输出判断结果。
在本实施例的一种实现方式中,该返回结果包括日志信息,日志信息包括日志级别、错误码、信息体和异常信息。
下面对日志信息的各项内容进行举例:日志级别可以为Error;错误码可以是数字,如1000,该数字与相应的错误对应;消息体可以是某方法执行失败,以及失败的原因;异常信息可以是Java抛出的异常信息。上面四项是一条具体的日志信息,一个方法执行过程中可以产生多条这样的日志,它们会在方法执行完成之后,由平台传给测试装置。
在本实施例的其他实现方式中,该返回结果包括待执行方法执行过程中返回值,该返回值为值或者对象的索引值。
输出判断结果可以采用下述方式进行:如果抛出异常,则设置执行结果标识为失败,并发送截图请求,以使IDE平台可以调用相应的API完成当前画面截图,再将截图画面发送给测试装置,帮助测试装置可以对异常或错误进行准确定位;若方法未抛出异常,但日志信息中存在Error级别的日志信息,同样设置执行结果标识为失败,并发送截图请求,以使IDE平台可以调用相应的API完成当前画面截图,再将截图画面发送给测试装置;若方法执行过程中无异常且无Error级别的日志信息,设置执行结果为成功。
本发明实施例中通过发送包括待执行方法的方法名、类名、插件标识、参数类型和参数值在内的测试请求信息,从而可以使收到测试请求信息的IDE执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高;根据得到的返回值输出判断结果,如果抛出异常,则设置执行结果标识为失败,并获取当前画面截图,便于失败定位。
在具体的实施方式中,前述图1、2中的IDE测试装置可以是一种计算机或者服务器,如图3所示。其一般包括存储器31、处理器32、接收器33和发送器34等部件。本领域技术人员可以理解,图3中所示出的结构并不构成对本装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图3对计算机30的各个构成部件进行具体的介绍:
存储器31可用于存储软件程序以及应用模块,处理器32通过运行存储在存储器31的软件程序以及应用模块,从而执行计算机30的各种功能应用以及数据处理。存储器31可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如报文解封装)等;存储数据区可存储根据计算机30的处理所创建的数据。此外,存储器31可以包括高速RAM(Random Access Memory,随机存取存储器),还可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器32是计算机30的控制中心,利用各种接口和线路连接整个计算机的各个部分。
具体地,处理器32通过运行或执行存储在存储器31内的软件程序和/或应用模块,以及调用存储在存储器31内的数据,处理器32可以实现,获取待执行方法的方法名、类名、插件标识、参数类型和参数值,待执行方法用于执行至少一个测试动作;
根据获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
通过发送器34测试请求信息。
在本发明实施例的一种实现方式中,处理器32可以实现:
通过接收器33接收测试请求信息的返回结果,返回结果是根据测试请求信息执行待执行方法后生成的;
根据接收到的返回结果,判断测试是否成功并输出判断结果。
在本发明实施例的另一种实现方式中,返回结果包括日志信息,日志信息包括日志级别、错误码、信息体和异常信息。
在本发明实施例的另一种实现方式中,处理器32可以实现:
获取自动化脚本,自动化脚本包括一个或多个待执行方法的方法名、类名、插件标识、参数类型和参数值,每个待执行方法的参数值用于指示一个或多个测试动作的执行;
根据获取到的自动化脚本生成测试请求信息。
实施例三
本发明实施例提供了一种IDE测试装置,该测试装置可以为IDE平台或者设置在IDE平台上,IDE平台可以为装有IDE的终端设备。参见图4,该装置包括:
接收模块301,用于接收测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
方法执行模块302,用于根据测试请求信息执行待执行方法。
本发明实施例通过接收测试装置发送的测试请求信息,并根据测试请求信息中的方法名、类名、插件标识、参数类型和参数值执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高。
实施例四
本发明实施例提供了一种IDE测试装置,该测试装置可以为IDE平台或者设置在IDE平台上,IDE平台可以为装有IDE的终端设备。参见图5,该装置包括:
接收模块401,用于接收测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
方法执行模块402,用于根据测试请求信息执行待执行方法,该待执行方法是根据接收模块401接收到的测试请求信息指定的。
进一步地,该装置还可以包括:
日志管理模块403,用于获取方法执行过程中生成的日志信息,日志信息包括日志级别、错误码、信息体和异常信息。
下面对日志信息的各项内容进行举例:日志级别可以为Error;错误码可以是数字,如1000,该数字与相应的错误对应;消息体可以是某方法执行失败,以及失败的原因;异常信息可以是Java抛出的异常信息。上面四项是一条具体的日志信息,一个方法执行过程中可以产生多条这样的日志,它们会在方法执行完成之后,由装置传给测试装置。
进一步地,方法执行模块402,还用于生成待执行方法的执行结果,待执行方法的执行结果包括日志信息,以及方法执行过程中的返回值;
该装置还包括:发送模块404,用于发送待执行方法的执行结果。
该返回值可以是值或者对象,若该返回值为对象(比如按钮、文本框等),则执行结果中可以包括该对象的索引,该索引可以在后续测试请求信息中使用,简化方法执行过程。其中,值可以是字符或字符串等。
容易知道,执行结果还可以只包括对象,不包括其索引。
进一步地,该装置还可以包括:对象管理模块405,用于获取并缓存待执行方法执行过程中返回的对象,并生成该对象的索引,则返回值为值或者对象的索引值,以便后续方法执行时可以调用,简化方法执行过程,节约开销。
进一步地,测试请求信息,包括待执行方法的方法名、类名、插件标识、参数类型和参数值,参数值用于指示一个或多个测试动作的执行。
待执行方法的方法名是指要执行的IDE(如Eclipse)中Junit插件方法或控件方法的名称;类名是指方法所在类的名称;插件ID是指类所在插件的ID;参数类型是指方法的参数类型,如String,int[],boolean;参数值是指方法的参数值,如{value1}{0;1;2}{false}。
测试请求信息可以包括一个待执行方法的方法名、类名、插件标识、参数类型和参数值,一个待执行方法可以包括多个测试动作,例如按钮点击测试方法可以包括按钮定位和点击操作两个测试动作,这两个测试动作通过测试请求信息中的参数值来表示,如:{控件定位方法API}{控件定位方法参数值}{控件操作方法API}{控件操作方法参数值},相应地,每一个参数值与一个参数类型对应。
测试请求信息包括多个参数类型和多个参数值时,多个参数类型用分隔符隔开,分隔符为英文分号,也可为其他符号,如type1;type2;type3。多个参数值中的每个参数值用符号对包括,如{value1}{value2}{value3},此处符号对为大括号;如果参数值包含数组,则数组元素用分隔符隔开,如{value1}{value2}{value31;value32;value33};如果参数值为对象,则采用该对象的索引表示。
进一步地,该装置还包括方法处理器,
一个待执行方法的参数值用于指示一个或多个测试动作的执行;
当一个待执行方法的参数值用于指示多个测试动作的执行时,方法执行模块,用于根据测试请求信息向方法处理器传递各个待执行方法的参数类型和参数值,并调用方法处理器采用参数类型和参数值执行方法处理器中预设的方法,预设的方法用于执行参数值对应的多个测试动作。
该方法处理器可以是控件处理器。下面以控件处理器为例,对方法执行过程进行举例:控件处理器用于执行存储在其内部的控件方法,当方法执行模块根据测试请求信息定位到的方法是该控件处理器内部方法时,将测试请求信息传递给控件处理器,控件处理器对测试请求中的参数类型和参数值进行处理,获取参数类型名称列表以及参数值列表。例如,该参数值为前文中的{控件定位方法API}{控件定位方法参数值}{控件操作方法API}{控件操作方法参数值},则根据这四个参数值依次执行控件定位方法和控件操作方法。另外,当参数类型为特殊字符串时,该控件处理器还需要判断是否使用对象管理模块405中缓存的对象,如果是,则从对象管理模块405根据索引值获取对象。
本发明实施例通过接收测试装置发送的测试请求信息,并根据测试请求信息中的方法名、类名、插件标识、参数类型和参数值执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高;另外,将待执行方法的执行结果的结果发送给测试装置,测试装置判断结果,设置失败或成功标识,便于失败定位。
在具体的实施方式中,前述图4、5中的IDE测试装置可以是一种计算机或者服务器,如图6所示。其一般包括存储器61、处理器62、接收器63和发送器64等部件。本领域技术人员可以理解,图6中所示出的结构并不构成对本装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图6对计算机60的各个构成部件进行具体的介绍:
存储器61可用于存储软件程序以及应用模块,处理器62通过运行存储在存储器61的软件程序以及应用模块,从而执行计算机60的各种功能应用以及数据处理。存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如报文解封装)等;存储数据区可存储根据计算机30的处理所创建的数据。此外,存储器61可以包括高速RAM(Random Access Memory,随机存取存储器),还可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器62是计算机60的控制中心,利用各种接口和线路连接整个计算机的各个部分。
具体地,处理器62通过运行或执行存储在存储器61内的软件程序和/或应用模块,以及调用存储在存储器61内的数据,处理器62可以实现,通过接收器63接收测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
根据测试请求信息执行待执行方法。
在本发明实施例的一种实现方式中,处理器62可以实现:
获取待执行方法执行过程中生成的日志信息,日志信息包括日志级别、错误码、信息体和异常信息。
在本发明实施例的另一种实现方式中,处理器62可以实现:
生成待执行方法的执行结果,待执行方法的执行结果包括日志信息,以及待执行方法执行过程中的返回值;
通过发送器64发送待执行方法的执行结果。
在本发明实施例的另一种实现方式中,处理器62可以实现:获取并缓存待执行方法执行过程中返回的对象,并生成对象的索引值;
则返回值为值或者对象的索引值。
在本发明实施例的另一种实现方式中,一个待执行方法的参数值用于指示一个或多个测试动作的执行;
当一个待执行方法的参数值用于指示多个测试动作的执行时,处理器62可以实现:
根据测试请求信息向方法处理器传递各个待执行方法的参数类型和参数值,并调用方法处理器采用参数类型和参数值执行方法处理器中预设的方法,预设的方法用于执行参数值对应的多个测试动作。
实施例五
本发明实施例提供了一种IDE测试方法,参见图7,该方法的执行主体为IDE测试装置,该方法包括:
步骤501:获取待执行方法的方法名、类名、插件标识、参数类型和参数值。
步骤502:根据获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,该测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值。
步骤503:发送生成的测试请求消息。
具体地,步骤503中可以向IDE平台发送生成的测试请求信息,以使IDE平台根据测试请求信息执行测试请求信息中的待执行方法。
其中,待执行方法的方法名是指要执行的IDE(如Eclipse)中Junit插件方法或控件方法的名称;类名是指方法所在类的名称;插件ID是指类所在插件的ID;参数类型是指方法的参数类型,如String,int[],boolean;参数值是指方法的参数值,如{value1}{0;1;2}{false}。
本发明实施例中通过发送包括待执行方法的方法名、类名、插件标识、参数类型和参数值在内的测试请求信息,从而可以使收到测试请求信息的IDE执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高。
实施例六
本发明实施例提供了一种IDE测试方法,参见图8,该方法的执行主体为IDE测试装置,该装置可以是测试管理平台,或者设置在测试管理平台上,测试管理平台是指具备测试用例管理的平台,包括但不限于华为公司的TMSS。该方法包括:
步骤601:获取待执行方法的方法名、类名、插件标识、参数类型和参数值,待执行方法用于执行至少一个测试动作。
步骤602:根据获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,该测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值。
其中,待执行方法的方法名、类名、插件标识、参数类型和参数值既可以是用户输入的,也可以是用户根据预定的执行策略触发的。
进一步地,待执行方法的方法名是指要执行的IDE(如Eclipse)中Junit插件方法或控件方法的名称;类名是指方法所在类的名称;插件ID是指类所在插件的ID;参数类型是指方法的参数类型,如String,int[],boolean;参数值是指方法的参数值,如{value1}{0;1;2}{false}。
在本发明实施例的一种实现方式中,步骤201和202可以采用以下方式实现:
首先,获取自动化脚本,自动化脚本包括一个或多个待执行方法的方法名、类名、插件标识、参数类型和参数值,每个待执行方法的参数值用于指示一个或多个测试动作的执行。自动化脚本包括连续的多个测试动作。
当参数值用于指示多个测试动作的执行时,优选将该参数值对应的多个测试动作封装为AW,从而便于工作人员编辑自动化脚本。
例如,在TMSS作为测试装置时,为了提升测试的效率,通常会事先将IDE中的GUI控件封装成对应的AW,如下拉框AW、按钮AW、菜单AW等,每个AW中主要包括控件定位方法名称、定位方法参数值、操作方法名称和操作方法参数值等内容,其中,定位方法名称是指用于对按钮、下拉框等进行定位的方法的名称,操作方法名称是指用于对前述定位的按钮或下拉框进行单击、双击等操作的方法的名称;工作人员根据测试步骤通过可视化的界面编辑器组合这些AW,从而生成自动化脚本。而IDE平台则可以根据,自动化脚本生成的测试请求信息中的方法名、类名、插件标识、参数类型和参数值定位控件,并执行操作方法。
然后,根据获取到的自动化脚本生成测试请求信息。
测试请求信息可以包括一个待执行方法的方法名、类名、插件标识、参数类型和参数值,一个待执行方法可以包括多个测试动作,例如按钮点击测试方法可以包括按钮定位和点击操作两个测试动作,这两个测试动作通过测试请求信息中的参数值来表示,如:{控件定位方法API)}{控件定位方法参数值}{控件操作方法API}{控件操作方法参数值},相应地,每一个参数值与一个参数类型对应。
测试请求信息包括多个参数类型和多个参数值时,多个参数类型用分隔符隔开,分隔符为英文分号,也可为其他符号,如type1;type2;type3。多个参数值中的每个参数值用符号对包括,如{value1}{value2}{value3},此处符号对为大括号;如果参数值包含数组,则数组元素用分隔符隔开,如{value1}{value2}{value31;value32;value33};如果参数值为对象,则采用该对象的索引表示。
另外,一个测试请求信息中还可以包括多个方法名,多个方法名以字符串或者列表形式表示。每个方法名分别可以对应设置一个或多个类名、插件标识、参数类型和参数值。
进一步地,该方法还包括:对获取到的方法名、类名、插件标识、参数类型和参数值的格式进行校验,然后转换为可以发送的格式,即测试请求信息。
步骤603:发送生成的测试请求消息。
具体地,步骤603中可以向IDE平台发送生成的测试请求信息,以使IDE平台根据测试请求信息执行测试请求信息中的待执行方法。
该测试请求信息通过网络发送至平台,发送方式可以为Socket。
步骤604:接收测试请求信息的返回结果,返回结果是根据测试请求信息执行待执行方法后生成的。
步骤605:根据接收到的返回结果,判断测试是否成功并输出判断结果。
在本实施例的一种实现方式中,该返回结果包括日志信息,日志信息包括日志级别、错误码、信息体和异常信息。
下面对日志信息的各项内容进行举例:日志级别可以为Error;错误码可以是数字,如1000,该数字与相应的错误对应;消息体可以是某方法执行失败,以及失败的原因;异常信息可以是Java抛出的异常信息。上面四项是一条具体的日志信息,一个方法执行过程中可以产生多条这样的日志,它们会在方法执行完成之后,由平台传给测试装置。
在本实施例的其他实现方式中,该返回结果包括待执行方法执行过程中返回值,该返回值为值或者对象的索引值。
输出判断结果可以采用下述方式进行:如果抛出异常,则设置执行结果标识为失败,并发送截图请求,以使IDE平台可以调用相应的API完成当前画面截图,再将截图画面发送给测试装置,帮助测试装置可以对异常或错误进行准确定位;若方法未抛出异常,但日志信息中存在Error级别的日志信息,同样设置执行结果标识为失败,并对当前屏幕进行截图;若方法执行过程中无异常且无Error级别的日志信息,设置执行结果为成功。
本发明实施例中通过发送包括待执行方法的方法名、类名、插件标识、参数类型和参数值在内的测试请求信息,从而可以使收到测试请求信息的IDE执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高;根据得到的返回值输出判断结果,如果抛出异常,则设置执行结果标识为失败,并获取当前画面截图,便于失败定位。
实施例七
本发明实施例提供了一种IDE测试方法,参见图9,该方法的执行主体为IDE测试装置,该测试装置可以为IDE平台或者设置在IDE平台上,IDE平台可以为装有IDE的终端设备。该方法包括:
步骤701:接收测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值。
步骤702:根据测试请求信息执行待执行方法。
本发明实施例通过接收测试装置发送的测试请求信息,并根据测试请求信息中的方法名、类名、插件标识、参数类型和参数值执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高。
实施例八
本发明实施例提供了一种IDE测试方法,参见图10,该方法的执行主体为IDE测试装置,该测试装置可以为IDE平台或者设置在IDE平台上,IDE平台可以为装有IDE的终端设备。该方法包括:
步骤801:接收发送的测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值。
步骤802:根据测试请求信息执行待执行方法,该待执行方法是根据接收到的测试请求信息指定的。
测试请求信息,包括待执行方法的方法名、类名、插件标识、参数类型和参数值,参数值用于指示一个或多个测试动作的执行。
待执行方法的方法名是指要执行的IDE(如Eclipse)中Junit插件方法或控件方法的名称;类名是指方法所在类的名称;插件ID是指类所在插件的ID;参数类型是指方法的参数类型,如String,int[],boolean;参数值是指方法的参数值,如{value1}{0;1;2}{false}。
测试请求信息可以包括一个待执行方法的方法名、类名、插件标识、参数类型和参数值,一个待执行方法可以包括多个测试动作,例如按钮点击测试方法可以包括按钮定位和点击操作两个测试动作,这两个测试动作通过测试请求信息中的参数值来表示,如:{控件定位方法API)}{控件定位方法参数值}{控件操作方法API}{控件操作方法参数值},相应地,每一个参数值与一个参数类型对应。
测试请求信息包括多个参数类型和多个参数值时,多个参数类型用分隔符隔开,分隔符为英文分号,也可为其他符号,如type1;type2;type3。多个参数值中的每个参数值用符号对包括,如{value1}{value2}{value3},此处符号对为大括号;如果参数值包含数组,则数组元素用分隔符隔开,如{value1}{value2}{value31;value32;value33};如果参数值为对象,则采用该对象的索引表示。
一个待执行方法的参数值用于指示一个或多个测试动作的执行;
当一个待执行方法的参数值用于指示多个测试动作的执行时,步骤802可以采用下述方式执行:根据测试请求信息向方法处理器传递各个待执行方法的参数类型和参数值,并调用方法处理器采用参数类型和参数值执行方法处理器中预设的方法,预设的方法用于执行参数值对应的多个测试动作。
该方法处理器可以是控件处理器。下面以控件处理器为例,对方法执行过程进行举例:控件处理器用于执行存储在其内部的控件方法,当根据测试请求信息定位到的方法是该控件处理器内部方法时,将测试请求信息传递给控件处理器,控件处理器对测试请求中的参数类型和参数值进行处理,获取参数类型名称列表以及参数值列表。例如,该参数值为前文中的{控件定位方法API}{控件定位方法参数值}{控件操作方法API}{控件操作方法参数值},则根据这四个参数值依次执行控件定位方法和控件操作方法。
步骤803:获取待执行方法执行过程中生成的日志信息,日志信息包括日志级别、错误码、信息体和异常信息。
下面对日志信息的各项内容进行举例:日志级别可以为Error;错误码可以是数字,如1000,该数字与相应的错误对应;消息体可以是某方法执行失败,以及失败的原因;异常信息可以是Java抛出的异常信息。上面四项是一条具体的日志信息,一个方法执行过程中可以产生多条这样的日志,它们会在方法执行完成之后,由平台传给测试装置。
步骤804:生成待执行方法的执行结果,待执行方法的执行结果包括日志信息,以及待执行方法执行过程中的返回值。
该返回值可以是值或者对象,若该返回值为对象(比如按钮、文本框等),则执行结果中可以包括该对象的索引,该索引可以在后续测试请求信息中使用,简化方法执行过程。其中,值可以是字符或字符串等。
进一步地,该方法还可以包括:获取并缓存待执行方法执行过程中返回的对象,并生成该对象的索引,则返回值为值或者对象的索引值,以便后续方法执行时可以调用,简化方法执行过程,节约开销。
容易知道,执行结果还可以只包括对象,不包括其索引。
步骤805:发送待执行方法的执行结果。
本发明实施例通过接收测试装置发送的测试请求信息,并根据测试请求信息中的方法名、类名、插件标识、参数类型和参数值执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高;另外,将待执行方法的执行结果的结果发送给测试装置,测试装置判断结果,设置失败或成功标识,便于失败定位。
实施例九
本发明实施例提供了一种IDE测试系统,参见图11,该系统包括:集成开发环境测试管理平台901和集成开发环境平台902,
集成开发环境测试管理平台901,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值;根据获取到的待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;向集成开发环境平台发送测试请求信息;
集成开发环境平台902,用于接收集成开发环境测试管理平台发送的测试请求信息;根据测试请求信息执行待执行方法。
进一步地,集成开发环境测试管理平台901还用于接收测试请求信息的返回结果,返回结果是集成开发环境平台根据测试请求信息执行待执行方法后生成的;
根据接收到的返回结果,判断测试是否成功并输出判断结果。
本发明实施例中通过发送包括待执行方法的方法名、类名、插件标识、参数类型和参数值在内的测试请求信息,从而可以使收到测试请求信息的IDE执行测试请求信息中指定的方法,该指定的方法是根据测试请求信息中待执行方法的方法名、类名、插件标识、参数类型定位得到的,IDE根据测试请求信息中参数值执行该方法,使得IDE中的待执行方法(包括但不限于Junit测试用例、GUI控件方法等)可以通过上述测试请求信息和测试装置的用例或AW对应起来,方便测试人员对测试用例或AW的维护,通过测试装置可以控制IDE中待执行方法的执行,测试人员只需要设置或输入相应的参数即可完成测试,不需要编写代码,对测试人员能力要求低,且进行测试时调试简单,开发效率高。
需要说明的是:上述实施例提供的IDE测试装置在进行IDE测试时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的IDE测试装置与IDE测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种集成开发环境测试装置,其特征在于,所述装置包括:
获取模块,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值;
处理模块,用于根据所述获取模块获取到的所述待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;
发送模块,用于发送所述处理模块生成的所述测试请求信息。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收所述测试请求信息的返回结果,所述返回结果是根据所述测试请求信息执行所述待执行方法后生成的;
所述处理模块,还用于根据所述接收模块接收到的所述返回结果,判断测试是否成功并输出判断结果。
3.根据权利要求2所述的装置,其特征在于,所述返回结果包括日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
4.根据权利要求1所述的装置,其特征在于,
所述获取模块用于,获取自动化脚本,所述自动化脚本包括一个或多个所述待执行方法的方法名、类名、插件标识、参数类型和参数值,每个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
所述处理模块用于,根据获取到的自动化脚本生成测试请求信息。
5.一种集成开发环境测试装置,其特征在于,所述装置包括:
接收模块,用于接收测试请求信息,所述测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
方法执行模块,用于根据所述测试请求信息执行所述待执行方法。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
日志管理模块,用于获取所述待执行方法执行过程中生成的日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
7.根据权利要求6所述的装置,其特征在于,
所述方法执行模块,还用于生成所述待执行方法的执行结果,所述待执行方法的执行结果包括所述日志信息,以及所述待执行方法执行过程中的返回值;
所述装置还包括:发送模块,用于发送所述待执行方法的执行结果。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:对象管理模块,用于获取并缓存所述待执行方法执行过程中返回的对象并生成所述对象的索引值,则所述返回值为值或者所述对象的索引值。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:方法处理器;
一个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
当一个所述待执行方法的所述参数值用于指示多个测试动作的执行时,所述方法执行模块,用于根据所述测试请求信息向所述方法处理器传递各个所述待执行方法的所述参数类型和所述参数值,并调用所述方法处理器采用所述参数类型和所述参数值执行所述方法处理器中预设的方法,所述预设的方法用于执行所述参数值对应的所述多个测试动作。
10.一种集成开发环境测试方法,其特征在于,所述测试方法包括:
获取待执行方法的方法名、类名、插件标识、参数类型和参数值;
根据获取到的所述待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;
发送所述测试请求信息。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
接收所述测试请求信息的返回结果,所述返回结果是根据所述测试请求信息执行所述待执行方法后生成的;
根据接收到的所述返回结果,判断测试是否成功并输出判断结果。
12.根据权利要求11所述的方法,其特征在于,所述返回结果包括日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
13.根据权利要求10所述的方法,其特征在于,所述获取待执行方法的方法名、类名、插件标识、参数类型和参数值,包括:
获取自动化脚本,所述自动化脚本包括一个或多个所述待执行方法的方法名、类名、插件标识、参数类型和参数值,每个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
根据获取到的自动化脚本生成测试请求信息。
14.一种集成开发环境测试方法,其特征在于,所述方法包括:
接收测试请求信息,所述测试请求信息包括待执行方法的方法名、类名、插件标识、参数类型和参数值;
根据所述测试请求信息执行所述待执行方法。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
获取所述待执行方法执行过程中生成的日志信息,所述日志信息包括日志级别、错误码、信息体和异常信息。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
生成所述待执行方法的执行结果,所述待执行方法的执行结果包括所述日志信息,以及所述待执行方法执行过程中的返回值;
发送所述待执行方法的执行结果。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
获取并缓存所述待执行方法执行过程中返回的对象,并生成所述对象的索引值;
则所述返回值为值或者所述对象的索引值。
18.根据权利要求17所述的方法,其特征在于,一个所述待执行方法的所述参数值用于指示一个或多个测试动作的执行;
当一个所述待执行方法的所述参数值用于指示多个测试动作的执行时,所述根据所述测试请求信息执行所述待执行方法,包括:
根据所述测试请求信息向方法处理器传递各个所述待执行方法的所述参数类型和所述参数值,并调用所述方法处理器采用所述参数类型和所述参数值执行所述方法处理器中预设的方法,所述预设的方法用于执行所述参数值对应的所述多个测试动作。
19.一种集成开发环境测试系统,其特征在于,所述系统包括集成开发环境测试管理平台和集成开发环境平台,
所述集成开发环境测试管理平台,用于获取待执行方法的方法名、类名、插件标识、参数类型和参数值;根据获取到的所述待执行方法的方法名、类名、插件标识、参数类型和参数值,生成测试请求信息,所述测试请求信息包括所述待执行方法的方法名、类名、插件标识、参数类型和参数值;向所述集成开发环境平台发送所述测试请求信息;
所述集成开发环境平台,用于接收所述集成开发环境测试管理平台发送的所述测试请求信息;根据所述测试请求信息执行所述待执行方法。
20.根据权利要求19所述的系统,其特征在于,所述集成开发环境测试管理平台还用于接收所述测试请求信息的返回结果,所述返回结果是所述集成开发环境平台根据所述测试请求信息执行所述待执行方法后生成的;
根据接收到的所述返回结果,判断测试是否成功并输出判断结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310705522.7A CN104731566B (zh) | 2013-12-19 | 2013-12-19 | 集成开发环境测试装置、方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310705522.7A CN104731566B (zh) | 2013-12-19 | 2013-12-19 | 集成开发环境测试装置、方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104731566A true CN104731566A (zh) | 2015-06-24 |
CN104731566B CN104731566B (zh) | 2018-12-25 |
Family
ID=53455492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310705522.7A Active CN104731566B (zh) | 2013-12-19 | 2013-12-19 | 集成开发环境测试装置、方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104731566B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776728A (zh) * | 2016-11-14 | 2017-05-31 | 上海斐讯数据通信技术有限公司 | 基于日志文件分析的代码检查方法、系统及开发平台 |
CN106980573A (zh) * | 2016-10-26 | 2017-07-25 | 阿里巴巴集团控股有限公司 | 一种构建测试用例请求对象的方法、装置及系统 |
CN108628739A (zh) * | 2018-03-19 | 2018-10-09 | 北京奇艺世纪科技有限公司 | 一种对Lua脚本进行调试的方法、客户端、服务器及调试器 |
CN108874662A (zh) * | 2017-05-15 | 2018-11-23 | 丰田自动车株式会社 | 测试方法和存储程序的非暂态计算机可读介质 |
CN109634492A (zh) * | 2018-10-23 | 2019-04-16 | 中国平安人寿保险股份有限公司 | 下拉框指定值输入方法、装置、及计算机可读存储介质 |
CN109656799A (zh) * | 2017-10-10 | 2019-04-19 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN109684188A (zh) * | 2017-10-19 | 2019-04-26 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN111782520A (zh) * | 2020-06-29 | 2020-10-16 | 中国工商银行股份有限公司 | 测试方法、装置和电子设备 |
CN113590462A (zh) * | 2021-06-15 | 2021-11-02 | 青岛本原微电子有限公司 | 基于Eclipse插件的DSP程序运行调试方法 |
CN114756217A (zh) * | 2022-03-22 | 2022-07-15 | 北京云枢创新软件技术有限公司 | 基于插件的脚本生成系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226499A (zh) * | 2007-01-16 | 2008-07-23 | 国际商业机器公司 | 用于诊断应用程序的方法和系统 |
CN101261600A (zh) * | 2007-03-06 | 2008-09-10 | 中兴通讯股份有限公司 | 一种软件测试装置及测试软件的设计方法 |
CN101930400A (zh) * | 2010-08-20 | 2010-12-29 | 北京神州泰岳软件股份有限公司 | Sdk自动化测试系统及方法 |
CN102193796A (zh) * | 2010-03-10 | 2011-09-21 | 微软公司 | 用于持久存储开发环境测试场景信息的整合工具 |
CN102222041A (zh) * | 2011-06-15 | 2011-10-19 | 深圳市运通信息技术有限公司 | 一种基于嵌入式软件的测试分析系统及方法 |
US20120222011A1 (en) * | 2008-01-23 | 2012-08-30 | International Business Machines Corporation | Detecting configuration problems in an eclipse-based software application |
CN103019928A (zh) * | 2011-09-27 | 2013-04-03 | 北京新媒传信科技有限公司 | 一种自动化测试方法和系统 |
-
2013
- 2013-12-19 CN CN201310705522.7A patent/CN104731566B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226499A (zh) * | 2007-01-16 | 2008-07-23 | 国际商业机器公司 | 用于诊断应用程序的方法和系统 |
CN101261600A (zh) * | 2007-03-06 | 2008-09-10 | 中兴通讯股份有限公司 | 一种软件测试装置及测试软件的设计方法 |
US20120222011A1 (en) * | 2008-01-23 | 2012-08-30 | International Business Machines Corporation | Detecting configuration problems in an eclipse-based software application |
CN102193796A (zh) * | 2010-03-10 | 2011-09-21 | 微软公司 | 用于持久存储开发环境测试场景信息的整合工具 |
CN101930400A (zh) * | 2010-08-20 | 2010-12-29 | 北京神州泰岳软件股份有限公司 | Sdk自动化测试系统及方法 |
CN102222041A (zh) * | 2011-06-15 | 2011-10-19 | 深圳市运通信息技术有限公司 | 一种基于嵌入式软件的测试分析系统及方法 |
CN103019928A (zh) * | 2011-09-27 | 2013-04-03 | 北京新媒传信科技有限公司 | 一种自动化测试方法和系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106980573A (zh) * | 2016-10-26 | 2017-07-25 | 阿里巴巴集团控股有限公司 | 一种构建测试用例请求对象的方法、装置及系统 |
CN106980573B (zh) * | 2016-10-26 | 2020-11-20 | 创新先进技术有限公司 | 一种构建测试用例请求对象的方法、装置及系统 |
CN106776728A (zh) * | 2016-11-14 | 2017-05-31 | 上海斐讯数据通信技术有限公司 | 基于日志文件分析的代码检查方法、系统及开发平台 |
CN108874662A (zh) * | 2017-05-15 | 2018-11-23 | 丰田自动车株式会社 | 测试方法和存储程序的非暂态计算机可读介质 |
CN109656799B (zh) * | 2017-10-10 | 2022-06-07 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN109656799A (zh) * | 2017-10-10 | 2019-04-19 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN109684188A (zh) * | 2017-10-19 | 2019-04-26 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN109684188B (zh) * | 2017-10-19 | 2022-04-12 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN108628739A (zh) * | 2018-03-19 | 2018-10-09 | 北京奇艺世纪科技有限公司 | 一种对Lua脚本进行调试的方法、客户端、服务器及调试器 |
CN109634492A (zh) * | 2018-10-23 | 2019-04-16 | 中国平安人寿保险股份有限公司 | 下拉框指定值输入方法、装置、及计算机可读存储介质 |
CN111782520A (zh) * | 2020-06-29 | 2020-10-16 | 中国工商银行股份有限公司 | 测试方法、装置和电子设备 |
CN113590462A (zh) * | 2021-06-15 | 2021-11-02 | 青岛本原微电子有限公司 | 基于Eclipse插件的DSP程序运行调试方法 |
CN114756217A (zh) * | 2022-03-22 | 2022-07-15 | 北京云枢创新软件技术有限公司 | 基于插件的脚本生成系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104731566B (zh) | 2018-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104731566A (zh) | 集成开发环境测试装置、方法及系统 | |
Moran et al. | Crashscope: A practical tool for automated testing of android applications | |
CN104407980B (zh) | 移动应用自动化测试装置和方法 | |
Amalfitano et al. | A gui crawling-based technique for android mobile application testing | |
CN110083541B (zh) | 游戏测试方法、装置、计算机存储介质和电子设备 | |
CN104375938B (zh) | 安卓应用程序的动态行为监测方法及系统 | |
CN109669873B (zh) | 用户界面自动测试方法及装置、电子设备及存储介质 | |
CN110362490B (zh) | 融合iOS与Android移动应用的自动化测试方法及系统 | |
CN102594618A (zh) | 实现存储局域网络存储设备测试的方法及装置 | |
CN108762966A (zh) | 系统异常拦截方法、装置、计算机设备及存储介质 | |
CN105204986A (zh) | 产品的自动化测试方法、服务器及移动设备 | |
CN111176629A (zh) | 一种应用开发的方法和装置 | |
Ali et al. | An industrial application of robustness testing using aspect-oriented modeling, UML/MARTE, and search algorithms | |
CN111400167A (zh) | Redfish服务合规性验证方法、装置及设备和介质 | |
CN113590454A (zh) | 测试方法、装置、计算机设备和存储介质 | |
CN112100081A (zh) | 基于双芯智能电表的升级测试方法、装置和计算机设备 | |
CN114817028B (zh) | 一种基于软件开发平台中多目标交叉调试系统 | |
CN107844486B (zh) | 一种用于客户端的分析网页问题的方法和系统 | |
CN116627850B (zh) | 函数调试方法、装置、存储介质以及电子设备 | |
CN103176903B (zh) | MapReduce分布式系统程序的测试方法及设备 | |
WO2017076244A1 (zh) | 一种动态修复应用程序的方法、装置及相关系统 | |
CN105930273A (zh) | 一种移动应用自动化安全测试平台 | |
CN104536892A (zh) | 一种软件在线调试方法和系统 | |
CN112199270B (zh) | 一种程序测试方法、装置、设备及介质 | |
CN109086200B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200201 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 210012 HUAWEI Nanjing base, 101 software Avenue, Yuhuatai District, Jiangsu, Nanjing Patentee before: Huawei Technologies Co.,Ltd. |