一种测试脚本设定方法及系统与流程

文档序号:12596932阅读:159来源:国知局
一种测试脚本设定方法及系统与流程

本发明涉及移动终端技术领域,尤其涉及一种测试脚本设定方法及系统。



背景技术:

现有的移动终端自动化测试技术中,由于测试项目种类繁多,常规的设计方案需要经过编写测试项目、编写脚本、校验脚本等过程才能实质进入测试阶段,在上述准备过程中需要测试人员的手动操作介入,例如需要测试人员根据不同的测试计划编辑不同的测试脚本等,从而增加测试人员的负担,降低移动终端自动化测试的测试效率。



技术实现要素:

根据现有技术中存在的缺陷,现提供一种测试脚本设定方法及系统的技术方案,旨在解决现有技术中存在的测试脚本设定需要人工操作,无法自动执行的问题。

上述技术方案具体包括:

一种测试脚本设定方法,适用于移动终端;其中,对应移动终端中的每个功能模块预设一组测试动作;

所述移动终端内预设有对应每个所述功能模块的测试用例;

所述测试脚本设定方法具体包括:

步骤S1,所述移动终端获取外部输入的测试指令,以确定本次测试对应的至少一个所述功能模块;

步骤S2,所述移动终端根据每个所述功能模块,提取相应的一组所述测试动作,以及相应的所述测试用例,并将所述测试动作与相应的所述测试用例结合以形成对应所述功能模块的测试项目;

步骤S3,所述移动终端根据预设的排列顺序对所有所述测试项目进行排列组合并输出;

步骤S4,所述移动终端应用一设定单元,根据经过排列组合后的所述测试项目形成本次测试需要执行的测试脚本并执行测试,随后退出。

优选的,该测试脚本设定方法,其中,将对应一个所述功能模块的所有所述测试动作封装于一预设的测试方案中。

优选的,该测试脚本设定方法,其中,将所有所述测试用例封装于一配置文件中;

所述步骤S2中,所述移动终端读取所述标准配置文件,以获取匹配于对应的所述功能模块的所述测试用例。

优选的,该测试脚本设定方法,其中,所述步骤S1中,所述测试指令中包括关联于本次测试的所有所述功能模块的名称。

优选的,该测试脚本设定方法,其中,所述步骤S3中,所述移动终端根据所述测试指令,形成本次测试需要执行的至少一个所述测试脚本,每个所述测试脚本中包括至少一个相关联的所述测试项目。

优选的,该测试脚本设定方法,其中,所述标准功能模块包括:

第一类业务模块,用于提供电路域业务处理;和/或

第二类业务模块,用于提供分组域业务处理;和/或

第三类业务模块,用于提供搜网类业务处理。

一种测试脚本设定系统,适用于移动终端;其中,包括:

第一存储单元,其中对应移动终端中的每个功能模块预设一组测试动作;

第二存储单元,其中预设有对应每个所述功能模块的测试用例;

获取单元,用于获取外部输入的测试指令;

解析单元,连接所述获取单元,用于对所述测试指令进行解析,以得到其中指示的关联于本次测试的所述功能模块;

设定单元,分别连接所述解析单元、所述第一存储单元和所述第二存储单元,所述设定单元用于根据关联于本次测试的所述功能模块,提取相对应的所述测试动作,以及相应的所述测试用例,并根据所述测试动作和所述测试用例形成相应的测试项目,将不同的测试项目以预定的执行顺序进行排列组合,以形成本次测试需要执行的测试脚本并输出。

优选的,该测试脚本设定系统,其中,所述第一存储单元中,每组所述测试动作被封装于一相应的测试方案中。

优选的,该测试脚本设定系统,其中,所述第二存储单元中,所有所述测试用例封装于一预设的配置文件中;

优选的,该测试脚本设定系统,其中,所述获取单元获取的所述测试指令中包括关联于本次测试的所述功能模块的名称。

优选的,该测试脚本设定系统,其中,所述设定单元包括:

第一提取模块,用于根据关联于本次测试的多个所述功能模块,于所述第一存储单元中提取相应的一组所述测试动作;

第二提取模块,用于根据关联于本次测试的多个所述功能模块,于所述第二存储单元中提取相应的一个所述测试用例;

组合模块,分别连接所述第一提取模块和所述第二提取模块,用于分别根据对应于每个所述功能模块的一组所述测试动作和对应的所述测试用例形成相应的测试项目并输出;

设定模块,连接所述组合模块,用于以预设的执行顺序对所有所述测试项目进行排列组合,以形成相应的测试脚本并输出。

优选的,该测试脚本设定系统,其中,所述设定单元根据所述测试指令,形成本次测试需要执行的至少一个所述测试脚本并输出;

每个所述测试脚本中包括至少一个相关联的所述测试项目。

优选的,该测试脚本设定系统,其中,所述标准功能模块包括:

第一类业务模块,用于提供电路域业务处理;和/或

第二类业务模块,用于提供分组域业务处理;和/或

第三类业务模块,用于提供搜网类业务处理。

上述技术方案的有益效果是:

1)提供一种测试脚本设定方法,将测试脚本的设定过程转换为系统自动设定,使用者只需要输入待测试的测试点(功能模块)即可,大大减轻了测试人员的手动操作负担,提升移动终端自动化测试的测试效率;

2)提供一种测试脚本设定系统,用以支持实现上述测试脚本设定方法。

附图说明

图1是本发明的较佳的实施例中,一种测试脚本设定方法的结构示意图;

图2是本发明的较佳的实施例中,一种测试脚本设定系统的总体结构示 意图;

图3是本发明的较佳的实施例中,测试脚本设定系统中,设定单元的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。

现有的移动终端自动化测试流程中,测试脚本的设定方法通常包括以下两种:

1)第一种是测试人员手动编写测试脚本,并将其投入测试流程。这种方式的缺陷在于:在编写过程中,较容易出现脚本语法错误、脚本格式编写不规范等问题,而且由于是测试人员手动编写,因此也会导致编写周期过长的问题;

2)第二种是通过录制移动终端功能模块的动作并回放以实现移动终端的自动化测试。这种方式虽然能够略微缩短测试脚本编写的周期,但是仍然需要手动操作进行功能模块的动作录制操作,并且录制下来的测试脚本仅适用于对应的移动终端,移植性比较差,测试维护较难。

本发明的较佳的实施例中,基于现有技术中存在的上述问题,现提供一种测试脚本设定方法,适用于移动终端。

本发明的较佳的实施例中,于上述移动终端内,对应移动终端中的每个功能模块预设一组测试动作。

具体地,本发明的较佳的实施例中,一组测试动作,是对应相应的功能模块所进行的具有普适的执行顺序的测试动作的集合。例如对于通话业务模块而言,一组相应的测试动作可以为检查通话状态→拨号→检查通话状态→ 等待预设时间后挂断电话→检查通话状态。则当测试人员通过下发测试指令指定需要测试通话业务功能时,移动终端自动按照上述顺序执行测试动作,以达到测试通话业务的目的。

本发明的较佳的实施例中,所谓功能模块,是指移动终端内普遍包括的用于实现某种通信业务的模块,例如:

第一类业务模块,用于提供电路域(Circuit Switch,CS)业务处理,包括一些语音业务和电路型数据业务等;

第二类业务模块,用于提供分组域(Packet Switch,PS)业务处理,包括常见的数据业务,流媒体业务以及网络电话(Voice over Internet Protocol,VOIP)业务等;

第三类业务模块,用于提供搜网类业务处理,例如提供网络搜索业务、网络切换业务以及网络保持业务等。

本发明的较佳的实施例中,可以于移动终端内提供上文中所述的一类功能模块,也可以于移动终端内同时提供上文中所述的多类功能模块。

本发明的其他实施例中,上述功能模块还可以包括移动终端内普遍存在的其他一些通信业务模块,在此不再赘述。

本发明的较佳的实施例中,上述移动终端内同时预设有对应每个功能模块的测试用例。具体地,所谓测试用例,是指上述测试动作所执行的实际内容,例如对于通话业务而言,测试用例可以为一个特定的电话号码,移动终端通过检查通话状态→拨打上述特定的电话号码→检查通话状态→等待预设时间后挂断电话→检查通话状态的一系列测试动作来达到测试通话业务的目的。又例如对于数据流量业务而言,测试用例可以为一个特定的网址,移动终端通过访问该特定的网址来达到测试数据流量业务的目的。

则本发明的较佳的实施例中,如图1所示,上述测试脚本设定方法具体包括:

步骤S1,移动终端获取外部输入的测试指令,以确定本次测试对应的至少一个功能模块;

本发明的较佳的实施例中,所谓测试指令,是指使用者向移动终端输入的用于指示本次测试需要用到的测试点的指令。本发明的较佳的实施例中,每个测试点对应于移动终端内的一个功能模块,即测试指令实质用于指示本 次测试中应用哪些功能模块进行测试。

因此,上述步骤S1中,移动终端可以通过外部输入的测试指令,确定本次测试中需要用到的相应的至少一个功能模块,并进而确定这些功能模块的名称。

步骤S2,移动终端根据每个功能模块,提取相应的一组测试动作,以及相应的测试用例,并将测试动作与相应的测试用例结合以形成对应功能模块的测试项目;

本发明的较佳的实施例中,根据本次测试需要用到的每个功能模块,分别提取相对应的一组测试动作,以及相对应的一个测试用例,随后根据所提取的内容形成相应的测试项目,例如对于通话业务而言,所形成的最终的测试项目可以为用于表示上文中所述的检查通话状态→拨打上述特定的电话号码→检查通话状态→等待预设时间后挂断电话→检查通话状态的测试编码。

本发明的较佳的实施例中,上述所有测试用例被封装于一个配置文件中。则上述步骤S2中,移动终端根据需要应用到的功能模块,从配置文件中读取相应的测试用例并形成测试项目。

本发明的较佳的实施例中,将测试动作封装于功能模块中,便于测试人员进行调用,同样地测试人员可以比较方便地对测试动作进行修改和维护。

相应地,本发明的较佳的实施例中,将测试用例统一置于配置文件中,也便于测试人员进行维护和修改。

步骤S3,移动终端根据预设的排列顺序对所有测试项目进行排列组合并输出;

步骤S4,移动终端应用一设定单元,根据经过排列组合后的测试项目形成本次测试需要执行的测试脚本并执行测试,随后退出。

本发明的较佳的实施例中,一次确定的自动化测试可以比较复杂,其中关联多个功能模块的测试过程,例如在一次自动化测试中,可能同时测试通话业务和短信业务,则上述步骤S2中,分别形成用于测试通话业务的测试项目,以及用于测试短信业务的测试项目后,根据这两个测试项目形成相应的测试脚本。进一步地,本发明的较佳的实施例中,在所形成的测试脚本中,需要确定一个执行顺序,即先执行通话业务测试,还是先执行短信业务测试,则本发明的较佳的实施例中,根据预先设定的相应的执行顺序(例如首先执 行通话业务测试,随后执行短信收发业务测试)来形成上述测试脚本。

在某些情况下,一次确定的自动化测试的过程可能相当复杂,采用一个测试脚本可能无法满足测试需求。因此,本发明的较佳的实施例中,提供一种批量形成测试脚本的方式,即根据下发的测试指令,批量生成至少一个本次测试需要执行的测试脚本,每个测试脚本中包括至少一个相应的测试项目。例如,在一次自动化测试过程中,需要测试移动终端通话和短信收发业务,同时需要测试移动终端的数据流量业务和彩信收发业务,则对应通话业务和短信收发业务形成一个相应的测试脚本,对应数据流量业务和彩信收发业务形成一个相应的测试脚本,在测试脚本内的各测试项目之间,以及在各测试脚本之间按照预设的执行顺序进行执行,以达到综合测试的目的。

本发明的较佳的实施例中,如上述步骤S4所述,在移动终端内,采用一设定单元形成上述测试脚本。

综上所述,本发明技术方案中,将关联于不同的基础功能模块的测试动作分别封装于该功能模块中,并将不同的功能模块对应的测试用例封装于一配置文件中。使用者只需要设定本次测试需要用到的功能模块(例如本次测试需要用到通话业务模块、短信业务模块以及数据流量业务模块等),移动终端自动根据模块名称分别匹配基础功能模块中的不同的测试动作,以及配置文件中获取不同的测试用例,并形成相应的测试项目,从而按照预定执行顺序形成相应的测试脚本并执行测试。上述技术方案能够解决现有的移动终端自动化测试过程中需要测试人员手动编写脚本或者操作录制产生脚本的过程,使得测试脚本的产生过程更加自动化,扩展了测试脚本的适用范围,提升测试脚本的可维护性,从而提升整个测试过程的测试效率。

本发明的较佳的实施例中,基于上文中所述的测试脚本设定方法,现提供一种测试脚本设定系统,同样适用于移动终端。

本发明的较佳的实施例中,如图2所示,上述测试脚本设定系统具体包括:

第一存储单元1,其中对应移动终端中的每个功能模块预设一组测试动作;

本发明的较佳的实施例中,第一存储单元1中保存如上文中所述的测试动作。进一步地,本发明的较佳的实施例中,对应于一个功能模块预设的一 组测试动作被封装于一个测试方案中,该测试方案对应于该功能模块,并保存于上述第一存储单元1中。

第二存储单元2,其中预设有对应每个功能模块的测试用例;

本发明的较佳的实施例中,第二存储单元2中保存如上文中所述的测试用例。进一步地,本发明的较佳的实施例中,第二存储单元2中保存的所有测试用例被封装于一个配置文件中,该配置文件被保存于上述第二存储单元2中。

获取单元3,用于获取外部输入的测试指令。本发明的较佳的实施例中,上述测试指令由使用者通过移动终端的输入部件(例如键盘或者触摸式显示屏等)或者外部的输入部件输入。进一步地,本发明的较佳的实施例中,上述测试指令用于指示本次测试需要用到的功能模块。换言之,本发明的较佳的实施例中,测试人员通过移动终端设定本次测试需要应用的功能模块的名称,以下发相应的测试指令。

解析单元4,连接获取单元3,用于对测试指令进行解析,以得到其中指示的关联于本次测试的功能模块。

本发明的较佳的实施例中,解析单元4对测试指令进行解析,解析得到的结果为本次测试需要应用的功能模块,进一步地为各功能模块的名称。换言之,本发明的较佳的实施例中,解析单元4根据测试指令,确定本次测试需要应用到的功能模块。

设定单元5,分别连接解析单元4、第一存储单元1和第二存储单元2,设定单元5用于根据关联于本次测试的功能模块,提取相对应的测试动作,以及相应的测试用例,并根据测试动作和测试用例形成相应的测试项目,将不同的测试项目以预定的执行顺序进行排列组合,以形成本次测试需要执行的测试脚本并输出。

本发明的较佳的实施例中,如图3所示,上述设定单元5具体包括:

第一提取模块51,用于根据关联于本次测试的多个功能模块,于第一存储单元中提取相应的一组测试动作。本发明的较佳的实施例中,所谓一组测试动作,是指如上文中所述的针对一个具体的功能模块被封装的一系列测试动作的集合。

第二提取模块52,用于根据关联于本次测试的多个功能模块,于第二存 储单元中提取相应的一个测试用例。本发明的较佳的实施例中,所谓测试用例,是指如上文中所述的针对一个具体的功能模块的测试所应用的对象。

组合模块53,分别连接第一提取模块51和第二提取模块52,用于分别根据对应于每个功能模块的一组测试动作和对应的测试用例形成相应的测试项目并输出。本发明的较佳的实施例中,根据提取得到的一组测试动作以及一个相应的测试用例,可以组合形成一个相应的测试项目。例如,对应通话业务模块的一组测试动作依次为:检查通话状态→拨号→检查通话状态→等待预设时间后挂断电话→检查通话状态;测试用例为一个特定的电话号码。则最终形成的测试项目为:检查通话状态→拨打上述特定的电话号码→检查通话状态→等待预设时间后挂断电话→检查通话状态。

设定模块54,连接组合模块53,用于以预设的执行顺序对所有测试项目进行排列组合,以形成相应的测试脚本并输出。

本发明的较佳的实施例中,如上文中所述,设定模块54采用预先设定的执行顺序将相应的测试项目进行排列组合,以封装在一个相应的测试脚本中输出。

本发明的较佳的实施例中,由于一次测试可能用到的测试脚本不止一个,因此设定模块54可以批量形成多个测试脚本,每个测试脚本中包括至少一个相应的测试项目,随后输出所有批量形成的测试脚本。

以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1