自动化测试的方法和装置与流程

文档序号:14571827发布日期:2018-06-01 22:40阅读:133来源:国知局
自动化测试的方法和装置与流程

本发明涉及计算机技术领域,特别是涉及一种自动化测试的方法和装置。



背景技术:

随着计算机技术的发展,大量的客户端应用发布,在发布前需要进行测试检测应用的功能,排除故障。运营配置测试是指需要获取资源配置才能进行的测试,如电脑管家应用闪电杀毒完成后展示漏洞修复这一测试场景,需要获取闪电杀毒完成的场景名、漏洞修复图标、编辑文字等,以在闪电杀毒完成后展示对应的漏洞修复图标、文字。

传统的测试方法,通过测试脚本构造客户端的测试场景,随着应用的更新需要不断维护测试脚本,测试脚本的编写复杂度高,测试场景的构建难,维护成本高。且运营配置测试往往需要不同的测试环境,传统的测试采用虚拟机构造测试环境,由于恢复虚拟机、拷贝文件等操作耗时较长,严重影响对时效性要求较高的运营配置测试。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种自动化测试的方法和装置,提高测试环境的构建效率,且能快速方便的构建测试场景。

一种自动化测试的方法,所述方法包括:

接收测试请求,所述测试请求包括测试任务信息,所述测试任务信息包括测试环境配置信息和测试场景配置信息;

获取可扩展标记语言XML环境配置文件,解析所述XML环境配置文件获取与所述测试环境配置信息匹配的环境配置参数,根据所述环境配置参数建立对应的测试环境;

获取XML场景配置文件,解析所述XML场景配置文件获取与所述测试场景配置信息匹配的场景配置参数,根据所述场景配置参数调用场景触发接口触发对应的测试场景;

获取测试配置资源数据,根据所述测试配置资源数据在所述测试环境和测试场景中进行测试。

一种自动化测试的装置,所述装置包括:

测试请求接收模块,用于接收测试请求,所述测试请求包括测试任务信息,所述测试任务信息包括测试环境配置信息和测试场景配置信息;

测试环境建立模块,用于获取可扩展标记语言XML环境配置文件,解析所述XML环境配置文件获取与所述测试环境配置信息匹配的环境配置参数,根据所述环境配置参数建立对应的测试环境;

测试场景触发模块,用于获取XML场景配置文件,解析所述XML场景配置文件获取与所述测试场景配置信息匹配的场景配置参数,根据所述场景配置参数调用场景触发接口触发对应的测试场景;

测试模块,用于获取测试配置资源数据,根据所述测试配置资源数据在所述测试环境和测试场景中进行测试。

上述自动化测试的方法和装置,通过接收测试请求,测试请求包括测试任务信息,测试任务信息包括测试环境配置信息和测试场景配置信息,获取可扩展标记语言XML环境配置文件,解析XML环境配置文件获取与测试环境配置信息匹配的环境配置参数,根据环境配置参数建立对应的测试环境,获取XML场景配置文件,解析所述XML场景配置文件获取与所述测试场景配置信息匹配的场景配置参数,根据场景配置参数调用场景触发接口触发对应的测试场景,获取测试配置资源数据,根据测试配置资源数据在测试环境和测试场景中进行测试,通过XML环境配置文件进行测试环境的建立,避免了采用虚拟机还原测试环境时由于恢复虚拟机、拷贝文件等操作耗时较长的问题,大大提高了测试环境建立的效率,同时,通过XML场景配置文件获取场景配置参数,调用场景触发接口触发测试场景,不需要每个测试场景都编写对应的测试脚本,需要生成不同的测试场景只需要传递不同的场景配置参数,简单方便,从而降低了测试脚本的维护成本,能快速方便的构建测试场景。

附图说明

图1为一个实施例中自动化测试的方法的应用环境图;

图2为一个实施例中图1中终端的内部结构图;

图3为一个实施例中自动化测试的方法的流程图;

图4为一个实施例中建立测试环境的流程图;

图5为一个实施例中获取场景配置参数的流程图;

图6为一个实施例中触发测试场景的流程图;

图7为一个实施例中获取测试配置资源的流程图;

图8为一个具体的实施例中自动化测试具体过程示意图;

图9为一个具体的实施例中获取目标测试配置资源的示意图;

图10为一个实施例中自动化测试的装置的结构框图;

图11为另一个实施例中自动化测试的装置的结构框图;

图12为一个实施例中测试环境建立模块的结构框图;

图13为一个实施例中测试场景触发模块的结构框图;

图14为一个实施例中测试模块的结构框图;

图15为又一个实施例中自动化测试的装置的结构框图。

具体实施方式

图1为一个实施例中自动化测试的方法运行的应用环境图。如图1所示,该应用环境包括终端110和服务器120,其中终端110、服务器120通过网络进行通信。

终端110,可为智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。服务器120用于向终端110发送测试请求,终端110根据测试请求中携带的配置信息建立对应的测试环境和触发对应的测试场景,并从服务器120获取测试配置资源数据,根据测试配置资源数据在测试环境和测试场景中进行测试。

在一个实施例中,图1中的终端110的内部结构如图2所示,该终端110包括通过系统总线连接的处理器、图形处理单元、存储介质、内存、网络接口、显示屏幕和输入设备。其中,终端110的存储介质存储有操作系统,还包括自动化测试的装置,该装置用于实现一种适用于终端的自动化测试的方法。该处理器用于提供计算和控制能力,支撑整个终端110的运行。终端110中的图形处理单元用于至少提供显示界面的绘制能力,内存为存储介质中的自动化测试的装置的运行提供环境,网络接口用于与服务器120进行网络通信,如接收服务器120发送的测试请求和测试资源配置数据等。显示屏幕用于显示应用界面等,如显示触发的测试场景界面,输入设备用于接收用户输入的命令或数据等。对于带触摸屏的终端110,显示屏幕和输入设备可为触摸屏。

在一个实施例中,如图3所示,提供了一种自动化测试的方法,以应用于上述应用环境中的终端来举例说明,包括以下步骤:

步骤S210,接收测试请求,测试请求包括测试任务信息,测试任务信息包括测试环境配置信息和测试场景配置信息。

具体的,当需要进行测试时,服务器向测试终端发送测试请求,测试请求中包括测试任务信息,测试任务信息包括测试任务标识用于区分多个测试任务,以及测试任务的配置信息等。测试环境配置信息用于配置测试环境,测试场景配置信息用于配置测试场景,其中测试环境是指为了完成测试任务所必需的计算机硬件、软件、网络设备、历史数据的总称。测试场景是指完成测试任务所必需的被测产品当前所处的状态,如常用的测试场景有闲时场景等。测试环境配置信息可包括测试环境属性关键字和键值,其中测试环境属性关键字可为测试环境名称关键字、测试环境标识关键字等,不同的关键字对应的键值可为不同的字符类型,如测试环境名称关键字对应中文字符型,测试环境标识关键字对应数字型。测试场景配置信息可包括测试场景属性关键字和键值,其中测试场景属性关键字可为测试场景名称关键字、测试场景标识关键字等,不同的关键字对应的键值可为不同的字符类型,如测试场景名称关键字对应中文字符型,测试场景标识关键字对应数字型。具体采用哪种类型的关键字来标识目标测试环境和目标测试场景可根据需要自定义。

不同的测试任务对应了不同的测试环境配置信息和测试场景配置信息。服务器在发送测试请求前,获取测试环境配置信息和测试场景配置信息,根据测试环境配置信息和测试场景配置信息生成测试任务信息。测试环境配置信息和测试场景配置信息可由运营人员在后台进行配置生成。

步骤S220,获取可扩展标记语言XML环境配置文件,解析XML环境配置文件获取与测试环境配置信息匹配的环境配置参数,根据环境配置参数建立对应的测试环境。

具体的,XML(Extensible Markup Language,可扩展标记语言)是一种用于标记文件使其具有结构性的标记语言,XML环境配置文件通过XML语言携带环境配置数据,可包括多种不同的测试环境对应的环境配置参数,并通过一定的结构和标签来区分各个不同的测试环境与匹配的环境配置参数在XML环境配置文件的位置。由于XML的标签没有被预定义,可根据需要自行定义标签,使得XML环境配置文件的生成更灵活方便。测试时,只需要解析XML环境配置文件,查找与测试环境配置信息匹配的目标环境配置参数来建立对应的测试环境。解析XML环境配置文件时,可通过查找测试环境标签得到每个测试环境对应的配置参数的分界位置,再在各个测试环境对应的环境配置参数中查找与测试环境配置信息对应的目标测试环境属性关键字和目标键值一致的测试环境属性关键字和键值,从而确定目标测试环境对应的目标环境配置参数。也可将测试环境属性关键字的类型设置为固定类型,只需要在XML环境配置文件中查找目标键值所在位置,就可获取对应的目标环境配置参数。

XML环境配置文件可实时从版本管理工具SVN获取,保证XML环境配置文件是最新的配置文件,且可直接使用。XML环境配置文件也可从终端获取,从终端获取的XML环境配置文件往往是加密的,需要先进行解密得到原始数据。环境配置参数具有不同的类型,如文件型和注册表型,可根据环境参数的具体类型进行不同的操作从而建立不同的测试环境。通过XML环境配置文件进行测试环境的建立,避免了采用虚拟机还原测试环境时由于恢复虚拟机、拷贝文件等操作耗时较长的问题,大大提高了测试环境建立的效率。

步骤S230,获取XML场景配置文件,解析XML场景配置文件获取与测试场景配置信息匹配的场景配置参数,根据场景配置参数调用场景触发接口触发对应的测试场景。

具体的,XML场景配置文件通过XML语言携带场景配置数据,可包括多种不同的测试场景对应的场景配置参数,并通过一定的结构和标签来区分各个不同的测试场景与匹配的场景配置参数在XML环境配置文件的位置。由于XML的标签没有被预定义,可根据需要自行定义标签,使得XML场景配置文件的生成更灵活方便。测试时,只需要解析XML场景配置文件,查找与测试场景配置信息匹配的目标场景配置参数,从而目标场景配置参数调用场景触发接口触发对应的测试场景。解析XML场景配置文件时,可通过查找测试场景标签得到每个测试场景对应的配置参数的分界位置,再在各个测试场景对应的场景配置参数中查找与测试场景配置信息对应的目标测试场景属性关键字和目标键值一致的测试场景属性关键字和键值,从而确定目标场景环境对应的目标场景配置参数。XML场景配置文件可实时从版本管理工具SVN获取,保证XML场景配置文件是最新的配置文件,且可直接使用。XML场景配置文件也可从终端获取,从终端获取的XML场景配置文件往往是加密的,需要先进行解密得到原始数据。

场景触发接口是提供给外部以调用内部封装的各种形成测试场景的事件所对应的方法。场景触发接口根据场景配置参数的不同,先后触发不同的事件,从而调用不同的事件对应的方法完成各个中间场景的生成,最终生成目标测试场景。通过接口的形式,将各个事件对应的方法进行封装,不需要每个测试场景都编写对应的测试脚本,需要生成不同的测试场景只需要传递不同的场景配置参数,简单方便,从而降低了测试脚本的维护成本。且可一次性到达目标测试场景,在存在多个中间测试场景时,自动连续的生成,避免了采用控件点击的方式时触发场景依赖客户端控件,如果客户端改版会造成脚本重写,且稳定性不高的问题。

步骤S240,获取测试配置资源数据,根据测试配置资源数据在测试环境和测试场景中进行测试。

具体的,测试配置资源数据用于提供测试需要的资源,包括图标、文字、控件数据、视频数据等。不同的测试场景对应不同的测试配置资源数据。可向服务器发送测试配置资源数据获取请求,从而从服务器获取相应的测试配置资源数据。可建立测试场景与测试配置资源数据的关联关系,从而获取与测试场景匹配的测试配置资源数据。测试环境和测试场景建立成功,且获取测试配置资源数据成功时,能完成相应的测试任务得到当前测试结果。

在一个实施例中,测试任务信息还包括预期测试结果信息,步骤S240之后,还包括:获取当前测试结果,根据当前测试结果与预期测试结果信息生成测试报告。

具体的,将预期测试结果信息携带在测试任务信息中,可与测试任务标识一一对应,从而在得到当前测试结果时获取当前测试任务对应的预期测试结果信息。预期测试结果信息根据当前测试任务的不同对应不同类型的信息,如是否弹出窗口,是否存在预设文件,是否展示预设控件,文件的目标信息摘要md5(Message Digest Algorithm 5)值等。从测试任务信息中提取得到预期测试结果信息后,可将预期测试结果信息与测试环境配置信息和测试场景配置信息分别保存在终端数据库的不同表格中,且建立这些表格之间的关联关系。

将预期测试结果与当前测试结果对比分析,得到测试报告,如果当前测试结果与预期测试结果不一致,可分析故障原因。可生成预设格式的测试报告,如HTML测试报告,并发送至运营配置服务器,或通过邮件、即时通信工具发送至对应的用户。

本实施例中,通过接收测试请求,测试请求包括测试任务信息,测试任务信息包括测试环境配置信息和测试场景配置信息,获取可扩展标记语言XML环境配置文件,解析XML环境配置文件获取与测试环境配置信息匹配的环境配置参数,根据环境配置参数建立对应的测试环境,获取XML场景配置文件,解析所述XML场景配置文件获取与所述测试场景配置信息匹配的场景配置参数,根据场景配置参数调用场景触发接口触发对应的测试场景,获取测试配置资源数据,根据测试配置资源数据在测试环境和测试场景中进行测试,通过XML环境配置文件进行测试环境的建立,避免了采用虚拟机还原测试环境时由于恢复虚拟机、拷贝文件等操作耗时较长的问题,大大提高了测试环境建立的效率,同时,通过XML场景配置文件获取场景配置参数,调用场景触发接口触发测试场景,不需要每个测试场景都编写对应的测试脚本,需要生成不同的测试场景只需要传递不同的场景配置参数,简单方便,从而降低了测试脚本的维护成本,能快速方便的构建测试场景。

在一个实施例中,步骤S210之后还包括:将测试任务信息写入数据库,解析数据库中存储的测试任务信息,根据测试任务信息建立任务管理队列,将测试任务信息对应的测试任务放入任务管理队列,触发任务管理队列中的第一测试任务执行。

具体的,可将测试任务信息写入数据库中的表格中,其中测试任务信息中携带的不同数据,可分别写入不同的表格,如将测试环境配置信息写入环境配置表格,将测试场景配置信息写入场景配置表格,将预期测试结果信息写入校验信息表格,从而后续可从不同的表格快速获取对应的数据。当测试任务信息写入数据库成功时,拉起任务调度模块。任务管理队列用于管理测试任务,任务调度模块可根据测试任务信息确定测试任务的数量,从而建立匹配长度的任务管理队列,将测试任务放入任务管理队列。判断当前是否存在正在执行的测试任务,如果存在,则等待当前测试任务执行完毕,执行任务管理队列中的下一个测试任务。如果等待时间超过预设阈值,则说明当前测试任务执行失败遇到故障,可删除当前测试任务,执行任务管理队列中的下一个测试任务。通过任务管理队列可保证所有测试任务有序的执行。

在一个实施例中,如图4所示,步骤S220包括:

步骤S221,根据测试环境配置信息获取目标测试环境属性关键字和第一目标键值。

具体的,目标测试环境属性关键字用于描述标识测试环境的类型,如通过测试环境名称、测试应用名称、测试应用用户名称都可唯一标识一个测试环境。第一目标键值用于描述目标测试环境属性关键字对应的具体内容,如目标测试环境属性关键字为“protocalkey”,第一目标键值为“fitstgame”,表示需要配置的测试环境是以protocalkey为关键字,名称为fitstgame。目标测试环境属性关键字和第一目标键值的数量可为多个,每个目标测试环境属性关键字都有对应目标键值,从而从多维度确定测试环境。如目标测试环境属性关键字还包括“ID”,“ID”对应的目标键值为“14”,表示需要配置的测试环境的名称为fitstgame,且版本号为14。当第一游戏fitstgame应用存在多个测试版本时,可通过ID区分不同版本需要的测试环境。

步骤S222,将目标测试环境属性关键字和第一目标键值与XML环境配置文件中的测试环境属性关键字和键值进行匹配,如果匹配成功,则从XML环境配置文件获取第一目标键值对应的环境配置参数。

具体的,如果XML环境配置文件中也存在与目标测试环境属性关键字和第一目标键值相同的测试环境属性关键字和键值,如存在protocalkey=fitstgame,则匹配成功,可根据第一目标键值在XML环境配置文件的位置和预设规则,获取与第一目标键值“fitstgame”对应的环境配置参数。在一个具体的实施例中,如图所示为XML环境配置文件的片段示意图,其中XML环境配置文件中包括了测试环境属性关键字“protocalkey”和对应的键值“fitstgame”,目标测试环境属性关键字“protocalkey”和第一目标键值“fitstgame”与XML环境配置文件中“protocalkey=“fitstgame””匹配成功,从而确定环境配置参数包括checkfile=1表示为文件配置参数,filename=“firstqame”表示文件名称,keypath表示文件路径,从而可构建测试环境。

步骤S223,如果环境配置参数包括文件配置参数,则根据文件配置参数创建对应的文件。

具体的,如果环境配置参数包括文件配置参数,获取文件配置参数对应的第一路径信息和文件名,根据第一路径信息获取第一目标位置并创建对应的文件,根据文件配置参数可先后创建一个或多个文件。

步骤S224,如果环境配置参数包括注册表配置参数,则根据注册表配置参数调用操作系统提供的应用程序编程接口创建对应的注册表。

具体的,注册表配置参数可为注册表创建地址,将注册表配置参数传递至操作系统提供的应用程序编程接口,从则创建对应的注册表。循环设置完所有的环境配置参数则测试环境创建成功。

本实施例中,通过测试环境属性关键字和对应的键值获取对应的环境配置参数,使得环境配置参数的获取更加灵活多样,满足不同测试环境的需求。

在一个实施例中,如图5所示,步骤S230包括:

步骤S231,根据测试场景配置信息获取目标测试场景属性关键字和第二目标键值。

具体的,目标测试场景属性关键字用于描述标识测试场景的类型,如通过测试场景名称、测试场景具体描述、测试场景编号都可唯一标识一个测试环境。第二目标键值用于描述目标测试场景属性关键字对应的具体内容,如目标测试场景属性关键字为“adpos”,第二目标键值为“scc_idle”,表示需要配置的测试场景为以scc_idle为关键字的场景,即闲时场景。目标测试场景属性关键字和第二目标键值的数量可为多个,每个目标测试场景属性关键字都有对应目标键值,从而从多维度确定或解释测试场景。如目标测试场景属性关键字还包括“name”,对应的目标键值为“闲时场景”,表示需要配置的测试场景的名称为闲时场景。

步骤S232,将目标测试场景属性关键字和第二目标键值与XML场景配置文件中的测试场景属性关键字和键值进行匹配,如果匹配成功,则从XML环境配置文件获取第二目标键值对应的场景配置参数。

具体的,如果XML环境配置文件中也存在与目标测试场景属性关键字和第二目标键值相同的测试场景属性关键字和键值,如存在adpos=“scc_idle”,则匹配成功,可根据第二目标键值在XML环境配置文件的位置和预设规则,获取与第二目标键值“闲时场景”对应的场景配置参数。在一个具体的实施例中,如图所示为XML场景配置文件的片段示意图,其中XML场景配置文件中包括了测试场景属性关键字“name”和对应的键值“闲时场景”,测试场景属性关键字“adpos”和对应的键值“scc_idle”,目标测试场景属性关键字“adpos”和第二目标键值“scc_idle”与XML环境配置文件中“adpos=“scc_idle””匹配成功,从而确定场景配置参数包括AppId=App_SceneCenter,EventId=3000002,确定了构建测试场景的应用标识和事件标识。

在一个实施例中,测试场景需要顺序经过多个中间测试场景生成,如图6所示,步骤S230中根据所述场景配置参数调用场景触发接口触发对应的测试场景的步骤包括:

步骤S233,场景触发接口获取第一中间测试场景对应的场景配置参数作为当前场景配置参数。

具体的,测试场景需要顺序经过多个中间测试场景生成,其中每个中间测试场景都有对应的场景配置参数,按照各个中间测试场景的时间生成顺序,先获取第一个中间测试场景对应的场景配置参数作为当前场景配置参数。

步骤S234,场景触发接口根据当前场景配置参数触发对应的当前事件生成当前中间测试场景。

具体的,每个当前场景配置参数都有对应的事件,通过对事件的触发从而执行事件对应的方法,完成对应的操作生成当前中间测试场景。

步骤S235,场景触发接口获取下一个中间测试场景对应的场景配置参数作为当前场景配置参数,进入步骤S234,直到最后一个中间测试场景对应的场景配置参数触发事件完毕生成目标测试场景。

具体的,第一个中间测试场景生成完毕再获取下一个中间测试场景对应的场景配置参数作为当前场景配置参数,继续生成下一个中间测试场景,所有的中间测试场景都共用一个场景触发接口,场景触发接口内部封装了根据不同的场景配置参数分别对应的事件及事件响应,从而只需要向场景触发接口传递不同的场景配置参数,就能自动完成各个中间测试场景的生成直到生成目标测试场景,不需要了解各个中间测试场景的生成规则和不同中间测试场景的连续性就能方便得一次性生成目标测试场景,提高了目标测试场景的生成效率。

在一个实施例中,测试任务信息还包括资源配置标识,如图7所示,步骤S240中获取测试配置资源数据的步骤包括:

步骤S241,向服务器发送上行协议,上行协议携带资源配置标识。

具体的,资源配置标识用于唯一标识一个资源配置,一个资源配置包括测试配置资源文件、XML环境配置文件、XML场景配置文件等,资源配置标识可携带在测试请求中。在后台服务器一次完整的资源配置称为一条投放,后台服务器可以包括多条投放,每条投放有一个唯一的资源配置标识。

步骤S242,接收服务器返回的与资源配置标识对应的测试配置资源。

具体的,服务器根据资源配置标识获取对应的测试配置资源,从而每个测试任务都可根据资源配置标识获取指定的测试配置资源,避免同一场景测试配置资源随机下发导致测试任务执行失败的问题,避免随机下发引起的定位和排除问题困难的问题。

在一个实施例中,上行协议还包括测试配置参数,以使服务器判断所述测试配置参数是否表示测试状态,如果是,是获取资源配置标识对应的测试配置资源,否则获取随机配置资源。

具体的,测试配置参数可为测试标志位,如0和1,0表示当前终端属于非测试状态,只需要随机下发配置资源,1表示当前终端属于测试状态,需要下发指定的测试配置资源。可根据测试配置参数选择不同的下发资源,提高了资源获取的灵活性。

在一个实施例中,上行协议还包括过滤参数,步骤S240中获取测试配置资源数据的步骤还包括:接收服务器根据过滤参数对资源配置标识对应的初始测试配置资源进行过滤后返回的目标测试配置资源。

具体的,过滤参数用于描述过滤条件,通过过滤条件可过滤掉一些限制条件,比如后台存在逻辑限制条件为是满足版本号为预设版本号才下发测试配置资源,如果当前测试机的版本号不满足条件,则服务器就不会下发测试配置资源,而如果后台服务器接收到这个过滤参数表示过滤掉这个限制条件,则不论不管版本号是否满足条件后台服务器都会下发测试配置资源。通过过滤参数可过滤掉一些限制条件,使得资源的下发更灵活。

在一个实施例中,测试任务信息还包括预期测试结果信息,步骤S240之后,还包括:获取当前测试结果,根据当前测试结果与预期测试结果信息生成测试报告。

具体的,预期测试结果信息用于描述与测试任务对应的预期测试结果,如弹出特定窗口,生成预设文件,文件的完整性校验值md5等于第一预设值等。如果当前测试结果与预期测试结果相匹配,则说明测试产品达到预期功能,如果当前测试结果与预期测试结果不匹配,则说明测试产品未达到预期功能,存在故障,可根据具体的测试结果数据和日志进行分析定位故障生成测试报告。测试报告的生成格式可自定义,如生成html(HyperText Markup Language,超级文本标记语言)格式报告。可将测试报告通过即时通信工具、邮件等发送至负责人,以及时有效的通知测试结果。

在一个具体的实施例中,结合图8和图9,自动化测试的方法的具体过程如下:

1、接收运营配置平台发送的测试请求,将测试任务放入任务管理队列,将测试任务对应的配置信息写入数据库中的任务信息taskinfo表,将测试任务对应的预期测试结果信息写入数据库中的校验信息checkinfo表。

2、解析测试任务信息,按照任务管理队列触发一个测试任务执行测试。

3、从taskinfo表获取测试环境配置信息,从SVN获取实时更新的客户端代码,从中获取实时更新的XML环境配置文件。

4、解析XML环境配置文件,判断是否存在与测试环境配置信息匹配的环境配置参数,如果存在,则获取对应的环境配置参数,判断环境配置参数是文件配置参数还是注册表配置参数,如果是文件配置参数,则创建对应的文件,如果是注册表配置参数,则创建对应的注册表,如果不存在与测试环境配置信息匹配的环境配置参数,则测试环境建立失败。

5、从taskinfo表获取测试场景配置信息,从客户端代码获取实时更新的XML场景配置文件。

6、解析XML场景配置文件,判断是否存在与测试场景配置信息匹配的场景配置参数,如果存在,则获取对应的场景配置参数,根据场景配置参数调用场景触发接口触发对应的测试场景,如果不存在与测试场景配置信息匹配的场景配置参数或通过触发接口触发失败,则测试场景建立失败。

7、向服务器发送携带资源配置标识的上行协议,以使服务器判断上行协议是否携带测试标志,如果是,则获取资源配置标识,获取资源配置标识对应的初始测试配置资源,如果不携带测试标志,则可随机下发第一测试配置资源作为目标测试配置资源,判断上行协议是否携带过滤参数,如果是,则根据过滤参数对初始测试配置资源进行过滤得到第二测试配置资源作为目标测试配置资源,如果不携带过滤参数,则初始测试配置资源就是目标测试配置资源。

8、接收服务器发送的目标测试配置资源,根据目标测试配置资源数据在测试环境和测试场景中进行测试。

在一个实施例中,如图10所示,提供了一种自动化测试的装置,包括:

测试请求接收模块310,用于接收测试请求,测试请求包括测试任务信息,测试任务信息包括测试环境配置信息和测试场景配置信息。

测试环境建立模块320,用于获取可扩展标记语言XML环境配置文件,解析XML环境配置文件获取与所述测试环境配置信息匹配的环境配置参数,根据环境配置参数建立对应的测试环境。

测试场景触发模块330,用于获取XML场景配置文件,解析XML场景配置文件获取与测试场景配置信息匹配的场景配置参数,根据场景配置参数调用场景触发接口触发对应的测试场景。

测试模块340,用于获取测试配置资源数据,根据测试配置资源数据在测试环境和测试场景中进行测试。

在一个实施例中,如图11所示,装置还包括:

任务调度模块350,用于将测试任务信息写入数据库,解析数据库中存储的测试任务信息,根据测试任务信息建立任务管理队列,将测试任务信息对应的测试任务放入任务管理队列,触发任务管理队列中的第一测试任务执行。

在一个实施例中,如图12所示,测试环境建立模块320包括:

环境配置参数获取单元321,用于根据测试环境配置信息获取目标测试环境属性关键字和第一目标键值,将目标测试环境属性关键字和第一目标键值与所述XML环境配置文件中的测试环境属性关键字和键值进行匹配,如果匹配成功,则从XML环境配置文件获取所述第一目标键值对应的环境配置参数。

第一创建单元322,用于如果环境配置参数包括文件配置参数,则根据文件配置参数创建对应的文件。

第二创建单元323,用于如果环境配置参数包括注册表配置参数,则根据所注册表配置参数调用操作系统提供的应用程序编程接口创建对应的注册表。

在一个实施例中,测试场景触发模块330还用于根据测试场景配置信息获取目标测试场景属性关键字和第二目标键值,将目标测试场景属性关键字和第二目标键值与所述XML场景配置文件中的测试场景属性关键字和键值进行匹配,如果匹配成功,则从XML环境配置文件获取所述第二目标键值对应的场景配置参数。

在一个实施例中,测试场景需要顺序经过多个中间测试场景生成,如图13所示,测试场景触发模块330包括:

当前场景配置参数获取单元331,用于场景触发接口获取第一中间测试场景对应的场景配置参数作为当前场景配置参数。

中间测试场景生成单元332,用于场景触发接口根据当前场景配置参数触发对应的当前事件生成当前中间测试场景。

循环单元333,用于场景触发接口获取下一个中间测试场景对应的场景配置参数作为当前场景配置参数,进入中间测试场景生成单元。

目标测试场景生成单元334,用于直到最后一个中间测试场景对应的场景配置参数触发事件完毕生成目标测试场景。

在一个实施例中,测试任务信息还包括资源配置标识,如图14所示,测试模块340包括:

协议发送单元341,用于向服务器发送上行协议,上行协议携带资源配置标识。

接收单元342,用于接收服务器返回的与所述资源配置标识对应的测试配置资源。

在一个实施例中,上行协议还包括过滤参数,接收单元342还用于接收服务器根据所述过滤参数对所述资源配置标识对应的初始测试配置资源进行过滤后返回的目标测试配置资源。

在一个实施例中,测试任务信息还包括预期测试结果信息,如图15所示,装置还包括:

测试结果生成模块360,用于获取当前测试结果,根据当前测试结果与预期测试结果信息生成测试报告。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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