CN105320589B - 云测试环境中测试脚本自动解析系统及其实现方法 - Google Patents

云测试环境中测试脚本自动解析系统及其实现方法 Download PDF

Info

Publication number
CN105320589B
CN105320589B CN201410331910.8A CN201410331910A CN105320589B CN 105320589 B CN105320589 B CN 105320589B CN 201410331910 A CN201410331910 A CN 201410331910A CN 105320589 B CN105320589 B CN 105320589B
Authority
CN
China
Prior art keywords
test
test script
module
script
environment
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.)
Active
Application number
CN201410331910.8A
Other languages
English (en)
Other versions
CN105320589A (zh
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 DEVELOPMENT CENTER OF COMPUTER SOFTWARE TECHNOLOGY
Shanghai Information Network Co Ltd
Original Assignee
SHANGHAI DEVELOPMENT CENTER OF COMPUTER SOFTWARE TECHNOLOGY
Shanghai Information Network 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 DEVELOPMENT CENTER OF COMPUTER SOFTWARE TECHNOLOGY, Shanghai Information Network Co Ltd filed Critical SHANGHAI DEVELOPMENT CENTER OF COMPUTER SOFTWARE TECHNOLOGY
Priority to CN201410331910.8A priority Critical patent/CN105320589B/zh
Publication of CN105320589A publication Critical patent/CN105320589A/zh
Application granted granted Critical
Publication of CN105320589B publication Critical patent/CN105320589B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种云测试环境中测试脚本自动解析系统,包括:测试脚本输入模块;测试脚本自适应配置模块;测试脚本依赖关系分析模块;测试脚本参数生成模块;测试脚本分发模块;云测试环境模块。本发明能够根据云测试环境的实际情况以及用户自定义的需求灵活配置测试脚本,使测试脚本具有自适应能力。同时对于有参数的测试脚本,根据用户需求自动生成多组数据值作为测试输入,实现参数化测试,并能根据用户指定的依赖关系,将测试脚本分配到云测试环境中并行执行。用户无需为每一个测试环境重新录制或者编写测试脚本,也无需为每个测试输入数据重复编写测试脚本,没有依赖关系的测试脚本也可并行执行,加快了测试脚本的执行速度,提高了测试效率,减轻了用户编写测试脚本的复杂度。本发明还公开了一种云测试环境中测试脚本自动解析的实现方法。

Description

云测试环境中测试脚本自动解析系统及其实现方法
技术领域
本发明涉及一种测试脚本解析系统及其实现方法,尤其涉及一种云测试环境中测试脚本自动解析系统及其实现方法。
背景技术
现代软件规模的巨大和复杂使得软件测试变得非常困难,软件测试通常要占到开发成本的50%甚至更多。因此,提高软件测试效率,对于降低软件开发成本,加快软件开发周期有重要的意义。软件测试的步骤一般是先要编写或录制测试脚本,然后运行测试脚本得到测试结果。这样的手动测试非常耗时,劳动强度高,并且很单调,而且还会引入一些人为的错误,因此人们提出了自动化测试的方案。通常自动化测试是通过一些测试自动化工具开发和执行测试脚本,达到评估软件质量的目的。自动化测试不仅能够大大减轻测试人员的工作量,而且减少了测试过程中人为出现的错误。
然而随着软件规模的增大,测试脚本的数量和规模也在急剧增加,传统的测试环境已经很难适应大量测试脚本的测试需求。随着云计算技术的不断发展,人们考虑将自动化测试环境部署在云中,利用云的无限的计算资源运行测试脚本,以达到提高测试效率的目的。云环境中的测试能应对大量的测试脚本,同时由于云的弹性的特点,使得云测试环境可根据需要自动增长,降低了测试成本。但云测试环境中的测试仍需解决以下问题:
第一,云测试环境的多样性使得测试脚本需要频繁更改。云中的测试环境可以由不同的操作系统、不同的浏览器、不同的自动化测试工具组成,支持的测试脚本语言也可能不同,甚至可能是异构的。同一个测试脚本在某些云测试环境中可以运行,在另一些云测试环境中可能就不能运行,因此需要修改测试脚本以适应某种云测试环境的需要。另外,当用户需要在测试脚本中某些特定的位置收集测试信息(如截图)时,也要修改测试脚本。但测试脚本的数量众多,针对每个测试脚本进行修改不仅费时费力,而且出错几率很高。因此云测试环境中的测试需要一种自动化的机制使得测试脚本能够适应不同的测试环境,满足用户特定的需要。
第二,测试脚本之间可能具有复杂的依赖关系。有时需要以一个特定的顺序运行测试脚本,或者在测试脚本之间传递一些数据和状态。这时,前一个测试脚本的执行将会对后一个测试脚本的执行产生影响,也会对整个测试的结果产生影响。目前的一些自动化测试工具能够对测试脚本之间的依赖关系进行定义和处理,但将测试放在云环境中进行时,测试脚本的调度将变得复杂,特别是当测试脚本数量众多,依赖关系复杂时,测试脚本在云测试环境中运行的效率会降低。
第三,测试脚本的参数增多时,测试数据的维护变得复杂。很多情况下,测试脚本是不变的,变化的仅仅是测试数据而已。如果为每一组测试数据都编写一个测试脚本,将出现大量雷同的测试脚本,这样测试脚本的复用率就很低。这种测试场景可以使用参数化测试来避免。参数化测试是一种在单个测试脚本中使用不同的输入数据重复地执行测试的技术,这些数据来源于一个预定义的数据集,其核心是将数据与测试脚本分离,从而可以在不修改测试脚本的情况下通过更新测试数据完成对测试用例的增加、更改和删除,提高了测试脚本的复用率。但当测试脚本的参数增多时,测试数据的组合数量就以几何级数的速度增长,手工定义测试数据集将变得困难。因此需要一种能够自动化生成测试数据集的机制。
发明内容
本发明提出了一种云测试环境中测试脚本自动解析系统及其实现方法,具有执行速度快,测试效率高,简化测试脚本的编写。
本发明提供一种云测试环境中测试脚本自动解析系统,包括:测试脚本输入模块,测试脚本自适应配置模块,测试脚本依赖关系分析模块,测试脚本参数生成模块,测试脚本分发模块,以及云测试环境模块;其中所述测试脚本输入模块用于与用户交互,输入测试脚本、测试数据和配置信息;所述测试脚本自适应配置模块与所述测试脚本输入模块连接,并与所述云测试环境模块连接,所述测试脚本自适应配置模块用于根据测试脚本输入模块输入的配置信息,以及所述云测试环境模块的测试环境分配情况,对测试脚本进行自动配置;所述测试脚本依赖关系分析模块与所述测试脚本输入模块连接,用于根据输入的配置信息分析测试脚本之间的依赖关系,生成依赖关系信息;所述测试脚本参数生成模块与所述测试脚本输入模块连接,用于对输入的测试数据进行组合,生成测试数据集;测试脚本分发模块分别与所述测试脚本自适应配置模块、测试脚本依赖关系分析模块和测试脚本参数生成模块连接,用于接收自动配置后的测试脚本,依赖关系信息以及测试数据集,将配置后的测试脚本发送给所述云测试环境模块;云测试环境模块与所述测试脚本分发模块连接,用于运行自动配置后的测试脚本。
本发明提供一种云测试环境中测试脚本自动解析系统的实现方法,包括以下步骤:
步骤一,用户通过所述测试脚本输入模块输入测试脚本、测试数据和配置信息;
步骤二,所述测试脚本输入模块将测试脚本和配置信息发送给所述测试脚本自适应配置模块,将配置信息发送给所述测试脚本依赖关系分析模块,将测试数据发送给所述测试脚本参数生成模块;
步骤三,所述测试脚本自适应配置模块根据用户提交的配置信息和所述云测试环境模块的测试环境分配情况,对用户提交的每个测试脚本进行配置,并将自动配置后的测试脚本发送给所述测试脚本分发模块;
步骤四,所述测试脚本依赖关系分析模块根据用户提交的配置信息生成依赖关系信息;
步骤五,所述测试脚本参数生成模块根据用户提交的测试数据生成测试数据集;
步骤六,所述测试脚本分发模块根据所述测试脚本依赖关系分析模块生成的依赖关系信息,将所述测试脚本自适应配置模块发来的测试脚本及所述脚本参数生成模块生成的测试数据集分配到所述云测试环境模块中执行。
本发明提供一种云测试环境中测试脚本自动解析系统的实现方法,所述步骤一中,所述配置信息包括操作系统名称、浏览器名称、浏览器版本、测试脚本名称、自定义的测试信息收集规则。
本发明提供一种云测试环境中测试脚本自动解析系统的实现方法,其特征在于,所述步骤四中,所述测试脚本的依赖关系信息包括:测试脚本执行顺序和可并行运行的测试脚本名称。
本发明提供一种云测试环境中测试脚本自动解析系统的实现方法,所述步骤五中,所述测试数据集包括用户提交的测试数据的所有组合。
本发明提供一种云测试环境中测试脚本自动解析系统的实现方法,所述步骤六中,执行步骤进一步包括:
步骤A1:所述测试脚本分发模块根据所述测试脚本依赖关系分析模块生成的测试脚本依赖关系信息,筛选出所有满足依赖条件可以运行的测试脚本;
步骤A2:对于每一个步骤A1中筛选出来的测试脚本,所述测试脚本分发模块根据所述测试脚本自适应配置模块对测试脚本的配置,在所述云测试环境模块中找出所有符合配置的测试环境;若找不到符合配置的测试环境,则测试中断;
步骤A3:对于每一个步骤A1中筛选出来的测试脚本,所述测试脚本分发模块判断是否存在对应的测试数据集,如是则所述测试脚本分发模块将该测试脚本和测试数据集分配到步骤A2中找出的测试环境中运行,若否,则将该测试脚本分配到步骤A2中找出的测试环境中运行;
步骤A4:所述测试脚本分发模块判断是否存在未执行的测试脚本,若是,重复步骤A1,若否测试结束。
本发明提供一种云测试环境中测试脚本自动解析的实现方法,步骤A2中,若找到多于一个符合配置的测试环境时,采用轮转算法将测试脚本平均分配到对应的测试环境中运行。
本发明采用的技术特征及其有益效果在于以下方面:
本发明提出了一种云测试环境中测试脚本自动解析系统及其实现方法,能够根据云测试环境的实际情况以及用户自定义的需求灵活配置测试脚本,使测试脚本具有自适应能力。同时对于有参数的测试脚本,根据用户需求自动生成多组数据值作为测试输入,实现参数化测试,并能根据用户指定的依赖关系,将测试脚本分配到云测试环境中并行执行。用户无需为每一个测试环境重新录制或者编写测试脚本,也无需为每个测试输入数据重复编写测试脚本,没有依赖关系的测试脚本也可并行执行,加快了测试脚本的执行速度,提高了测试效率,减轻了用户编写测试脚本的复杂度。
附图说明
图1为本发明云测试环境中测试脚本自动解析系统的结构示意图;
图2为本发明云测试环境中测试脚本自动解析系统的工作流程图;
图3为测试脚本分配的工作流程图;
具体实施方式
下面结合附图和实施例对本发明的具体实施方式做进一步详细的说明,但不应以此限制本发明的保护范围。
如图1所示,本发明的云测试环境中测试脚本自动解析系统,包括:测试脚本输入模块1、测试脚本自适应配置模块2、测试脚本依赖关系分析模块3、测试脚本参数生成模块4、测试脚本分发模块5、云测试环境模块6。测试脚本输入模块1分别与测试脚本自适应配置模块2、测试脚本依赖关系分析模块3和测试脚本参数生成模块4连接;测试脚本分发模块5分别与测试脚本自适应配置模块2、测试脚本依赖关系分析模块3和测试脚本参数生成模块4连接;云测试环境模块6分别与测试脚本自适应配置模块2和测试脚本分发模块5连接。
如图2所示,本发明的云测试环境中测试脚本自动解析系统的实现方法,包括:
步骤一:用户通过测试脚本输入模块1提交测试脚本、测试数据和配置信息。配置信息包括:操作系统名称、浏览器名称、浏览器版本、测试脚本名称、自定义的测试信息收集规则。
步骤二:测试脚本输入模块1将测试脚本和配置信息发送给测试脚本自适应配置模块2,将配置信息发送给测试脚本依赖关系分析模块3,将测试数据发送给所述测试脚本参数生成模块4。
步骤三:测试脚本自适应配置模块2根据用户提交的配置信息和云测试环境模块6的测试环境分配情况,对用户提交的每个测试脚本进行配置,并将配置后的测试脚本发送给所述测试脚本分发模块5。
步骤四:测试脚本依赖关系分析模块3根据用户提交的配置信息生成依赖关系信息。测试脚本的依赖关系信息包括,测试脚本执行顺序和可并行运行的测试脚本名称。
步骤五:测试脚本参数生成模块4根据用户提交的测试数据生成测试数据集。测试数据集包括用户提交的测试数据的所有组合。
步骤六:测试脚本分发模块5根据测试脚本依赖关系分析模块3生成的依赖关系信息,将测试脚本自适应配置模块2发来的测试脚本及脚本参数生成模块4生成的测试数据集分配到所述云测试环境模块6中执行。
如图3所示,步骤五中,将测试脚本及测试数据集分配到云测试环境模块中执行的步骤包括:
步骤A1:测试脚本分发模块5根据测试脚本依赖关系分析模块3生成的测试脚本依赖关系信息,筛选出所有满足依赖条件可以运行的测试脚本。
步骤A2:对于每一个步骤A1中筛选出来的测试脚本,测试脚本分发模块5根据测试脚本自适应配置模块2对测试脚本的配置,在云测试环境模块6中找出所有符合配置的测试环境。若找不到符合配置的测试环境,则测试中断。
步骤A3:对于每一个步骤A1中筛选出来的测试脚本,如果存在对应的测试数据集(由测试脚本参数生成模块4生成),则测试脚本分发模块5将该测试脚本和测试数据集分配到步骤A2中找出的测试环境中运行,否则仅将该测试脚本分配到步骤A2中找出的测试环境中运行。当步骤A2找出多于一个符合配置的测试环境时,采用轮转算法将测试脚本平均分配到对应的测试环境。
步骤A4:如果还有未执行的测试脚本,回到步骤A1,否则测试结束。
测试脚本输入模块1用于与用户交互,接收用户提交的测试脚本、测试数据和配置信息。用户通过HTTP协议与测试脚本输入模块1通信,测试脚本输入模块1以网页的形式呈现在用户面前,提供一个提交测试脚本、测试数据、配置信息的页面。用户可提交多个测试脚本,每个测试脚本是一个文本文件,包含用高级编程语言编写的测试代码;用户提交的测试数据是以网页提供的表单形式提交,测试数据与指定的测试脚本对应,包括该测试脚本的参数取值列表。用户提交的配置信息以网页提供的表单形式提交,包括但不限于操作系统名称、浏览器名称、浏览器版本、每个测试脚本所依赖的测试脚本名称、用户自定义的测试信息收集规则。用户提交测试脚本、测试数据和配置信息后,测试脚本输入模块1以HTTP协议将测试脚本和配置信息发送给测试脚本自适应配置模块,将配置信息发送给测试脚本依赖关系分析模块,将测试数据发送给测试脚本参数生成模块。
测试脚本自适应配置模块2的作用是根据用户提交的配置信息和云测试环境模块6的测试环境分配情况,对用户提交的每个测试脚本进行配置,并将配置好的测试脚本发送给测试脚本分发模块5。测试脚本自适应配置模块2根据配置信息中的操作系统名称、浏览器名称和浏览器版本,将测试环境模块6中符合配置的测试环境集群的网络入口地址写入测试脚本中,并将相应浏览器的调用代码写入测试脚本中。然后根据配置信息中的用户自定义的测试信息收集规则,对测试脚本进行进一步配置。
用户自定义的测试信息收集规则包括两部分:需要收集测试信息的位置和收集测试信息的方法。其中需要收集测试信息的位置是指测试脚本中某类语句的前后位置,比如断言语句之后、异常处理语句之前等。收集测试信息的方法是指收集测试信息的具体动作,比如截图、录像、打印信息等。测试脚本自适应配置模块2在需要收集测试信息的位置插入相应的收集测试信息的语句,完成测试脚本的配置。测试脚本配置完成后,测试脚本自适应配置模块2以HTTP协议将配置好的测试脚本发送给测试脚本分发模块5。
测试脚本依赖关系分析模块3的作用是根据用户提交的配置信息分析测试脚本之间的依赖关系,生成依赖关系信息。测试脚本依赖关系分析模块3根据配置信息中的每个测试脚本所依赖的测试脚本名称,分析出测试脚本的执行顺序以及可并行运行的测试脚本名称。分析结果以xml文档格式储存,以HTTP协议将分析结果发送给测试脚本分发模块5。
测试脚本参数生成模块4的作用是对用户提交的测试数据进行组合,生成测试数据集。用户提交的测试数据是以网页提供的表单形式提交,测试数据与指定的测试脚本对应,包括该测试脚本的参数取值列表。测试脚本参数生成模块4将各个参数的取值进行组合,生成测试数据集,以xml文档格式储存,并以HTTP协议将测试数据集发送给测试脚本分发模块5。
测试脚本分发模块5的作用是根据测试脚本自适应配置模块、测试脚本依赖关系分析模块和测试脚本参数生成模块的执行结果,将测试脚本分配到云测试环境模块中执行。
测试脚本分发模块5首先根据测试脚本依赖关系分析模块3生成的测试脚本依赖关系信息,筛选出所有满足依赖条件可以运行的测试脚本,这些脚本可以并行执行。然后在云测试环境模块6中,为这些脚本找到符合配置的测试环境。当找到多个符合配置的测试环境时,测试脚本分发模块5将测试脚本平均分配到各个找到的测试环境中并行执行,以提高执行效率。分配测试脚本时,如果测试脚本有对应的测试数据集,则把测试数据集也一起发送至测试环境中。分配时用HTTP协议传送数据。重复以上步骤直至所有测试脚本执行完成,测试结束。
云测试环境模块6是构建在云计算环境之上的虚拟机集合,每个测试环境是一个虚拟机。云测试环境模块6是由多台计算机组成的局域网,并且每台计算机均安装Linux操作系统。整个云测试环境模块6用CloudStack作为云平台软件。云测试环境模块6中的测试环境配置多样,测试环境的操作系统可以是Windows或Linux,浏览器可以是IE、Firefox、Chrome等,以满足不同测试脚本对测试环境的需要。相同配置的测试环境构成一个测试环境集群,每个测试环境集群有一个网络入口地址。
实施例1:测试脚本自适应配置
测试脚本自适应配置模块2会根据用户提交的配置信息和云测试环境模块6的测试环境分配情况,对用户提交的每个测试脚本进行配置,并将配置好的测试脚本发送给测试脚本分发模块5。例如用户提交的配置信息中要求测试的操作系统为Linux,浏览器为Firefox,浏览器版本为22,并且要求在所有断言语句之后截图。测试脚本自适应配置模块2会将符合该配置的测试环境集群的网络入口地址写入每个测试脚本中,并将Firefox浏览器的调用代码写入每个测试脚本,然后在每个测试脚本的所有断言语句之后插入截图的语句。最后将配置好的测试脚本发送给测试脚本分发模块5。
实施例2:测试脚本依赖关系分析
测试脚本依赖关系分析模块3根据用户提交的配置信息中的每个测试脚本所依赖的测试脚本名称,分析出测试脚本的执行顺序以及可并行运行的测试脚本名称,分析结果以xml文档格式储存,并以HTTP协议将分析结果发送给测试脚本分发模块5。例如用户提交的配置信息中,测试脚本a依赖于测试脚本c,测试脚本b依赖于测试脚本d,测试脚本c和d均依赖于测试脚本e。则测试脚本的执行顺序应为e、c和d、a和b,其中c和d可并行执行,a和b可并行执行。上述分析结果以xml文档格式储存,并发送给测试脚本分发模块5。
实施例3:测试脚本参数生成
测试脚本参数生成模块4对用户提交的测试数据进行组合,生成测试数据集。例如测试脚本需要三个参数a、b、c,用户提交的测试数据中参数a包括a1、a2两个取值,参数b包括b1、b2、b3三个取值,参数c包括c1、c2、c3、c4、c5五个取值。测试脚本参数生成模块4会根据上述数据生成2×3×5=30组数据,写入测试数据集中。上述生成的测试数据集及其对应的测试脚本名称以xml文档格式储存,并发送给测试脚本分发模块5。
实施例4:测试脚本分发
测试脚本分发模块5根据测试脚本自适应配置模块2、测试脚本依赖关系分析模块3和测试脚本参数生成模块4的执行结果,将测试脚本分配到云测试环境模块6中执行。测试脚本分发模块5首先根据测试脚本依赖关系分析模块3的分析结果,筛选出所有满足依赖关系可以运行的测试脚本,以实施例2中提到的依赖关系为例,测试脚本的执行顺序应为e、c和d、a和b,第一轮执行的测试脚本为e,第二轮为c和d,第三轮为a和b。然后在云测试环境模块6中,为测试脚本e找到符合配置的测试环境。当测试脚本e有对应的测试数据集时(例如实施例3中提到的测试数据集),将测试脚本e和测试数据集一起发送到测试环境中执行。测试脚本e完成后可并行执行测试脚本c和d,当找到两个符合配置的测试环境时,将测试脚本c分配到测试环境1中执行,将测试脚本d分配到测试环境2中执行。当测试脚本c和d执行完毕后也用类似的方法分配测试脚本a和b执行。所有测试脚本运行完毕后,测试结束。
以上仅为本发明的较佳实施例,并非用来限定本发明的实施范围。任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种变动与润饰,本发明保护范围应以权利要求书所界定的保护范围为准。

Claims (7)

1.一种云测试环境中测试脚本自动解析系统,其特征在于,包括:测试脚本输入模块(1),测试脚本自适应配置模块(2),测试脚本依赖关系分析模块(3),测试脚本参数生成模块(4),测试脚本分发模块(5),以及云测试环境模块(6);
所述测试脚本输入模块(1),用于与用户交互,输入测试脚本、测试数据和配置信息;
所述测试脚本自适应配置模块(2),与所述测试脚本输入模块(1)连接,并与所述云测试环境模块(6)连接,所述测试脚本自适应配置模块(2)用于根据测试脚本输入模块(1)输入的配置信息,以及所述云测试环境模块(6)的测试环境分配情况,对测试脚本进行自动配置;
所述测试脚本依赖关系分析模块(3),与所述测试脚本输入模块(1)连接,用于根据输入的配置信息分析测试脚本之间的依赖关系,生成依赖关系信息;
所述测试脚本参数生成模块(4),与所述测试脚本输入模块(1)连接,用于对输入的测试数据进行组合,生成测试数据集;
所述测试脚本分发模块(5),分别与所述测试脚本自适应配置模块(2)、测试脚本依赖关系分析模块(3)和测试脚本参数生成模块(4)连接,用于接收自动配置后的测试脚本,依赖关系信息以及测试数据集,将配置后的测试脚本发送给所述云测试环境模块(6);
所述云测试环境模块(6),与所述测试脚本分发模块(5)连接,用于运行自动配置后的测试脚本。
2.一种如权利要求1所述的云测试环境中测试脚本自动解析系统的实现方法,其特征在于,包括以下步骤:
步骤一,用户通过所述测试脚本输入模块(1)输入测试脚本、测试数据和配置信息;
步骤二,所述测试脚本输入模块(1)将测试脚本和配置信息发送给所述测试脚本自适应配置模块(2),将配置信息发送给所述测试脚本依赖关系分析模块(3),将测试数据发送给所述测试脚本参数生成模块(4);
步骤三,所述测试脚本自适应配置模块(2)根据用户提交的配置信息和所述云测试环境模块(6)的测试环境分配情况,对用户提交的每个测试脚本进行配置,并将自动配置后的测试脚本发送给所述测试脚本分发模块(5);
步骤四,所述测试脚本依赖关系分析模块(3)根据用户提交的配置信息生成依赖关系信息;
步骤五,所述测试脚本参数生成模块(4)根据用户提交的测试数据生成测试数据集;
步骤六,所述测试脚本分发模块(5)根据所述测试脚本依赖关系分析模块(3)生成的依赖关系信息,将所述测试脚本自适应配置模块(2)发来的测试脚本及所述脚本参数生成模块(4)生成的测试数据集分配到所述云测试环境模块(6)中执行。
3.如权利要求2所述的云测试环境中测试脚本自动解析系统的实现方法,其特征在于,所述步骤一中,所述配置信息包括操作系统名称、浏览器名称、浏览器版本、测试脚本名称、自定义的测试信息收集规则。
4.如权利要求2所述的云测试环境中测试脚本自动解析系统的实现方法,其特征在于,所述步骤四中,所述测试脚本的依赖关系信息包括:测试脚本执行顺序和可并行运行的测试脚本名称。
5.如权利要求2所述的云测试环境中测试脚本自动解析系统的实现方法,其特征在于,所述步骤五中,所述测试数据集包括用户提交的测试数据的所有组合。
6.如权利要求2所述的云测试环境中测试脚本自动解析系统的实现方法,其特征在于,所述步骤六中,执行步骤进一步包括:
步骤A1:所述测试脚本分发模块(5)根据所述测试脚本依赖关系分析模块(3)生成的测试脚本依赖关系信息,筛选出所有满足依赖条件可以运行的测试脚本;
步骤A2:对于每一个步骤A1中筛选出来的测试脚本,所述测试脚本分发模块(5)根据所述测试脚本自适应配置模块(2)对测试脚本的配置,在所述云测试环境模块(6)中找出所有符合配置的测试环境;若找不到符合配置的测试环境,则测试中断;
步骤A3:对于每一个步骤A1中筛选出来的测试脚本,所述测试脚本分发模块(5)判断是否存在对应的测试数据集,如是则所述测试脚本分发模块(5)将该测试脚本和测试数据集分配到步骤A2中找出的测试环境中运行,若否,则将该测试脚本分配到步骤A2中找出的测试环境中运行;
步骤A4:所述测试脚本分发模块(5)判断是否存在未执行的测试脚本,若是,重复步骤A1,若否测试结束。
7.如权利要求6所述的云测试环境中测试脚本自动解析系统的实现方法,其特征在于,步骤A2中,若找到多于一个符合配置的测试环境时,采用轮转算法将测试脚本平均分配到对应的测试环境中运行。
CN201410331910.8A 2014-07-14 2014-07-14 云测试环境中测试脚本自动解析系统及其实现方法 Active CN105320589B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410331910.8A CN105320589B (zh) 2014-07-14 2014-07-14 云测试环境中测试脚本自动解析系统及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410331910.8A CN105320589B (zh) 2014-07-14 2014-07-14 云测试环境中测试脚本自动解析系统及其实现方法

Publications (2)

Publication Number Publication Date
CN105320589A CN105320589A (zh) 2016-02-10
CN105320589B true CN105320589B (zh) 2017-12-22

Family

ID=55248009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410331910.8A Active CN105320589B (zh) 2014-07-14 2014-07-14 云测试环境中测试脚本自动解析系统及其实现方法

Country Status (1)

Country Link
CN (1) CN105320589B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105760286B (zh) * 2016-02-17 2018-09-07 中国工商银行股份有限公司 应用数据库动态性能检测方法及检测装置
CN105868112A (zh) * 2016-03-29 2016-08-17 上海斐讯数据通信技术有限公司 一种交互式自动化测试方法及系统
CN108399121B (zh) * 2017-02-06 2023-04-14 中兴通讯股份有限公司 一种基于脚本的测试方法和装置
CN107229569A (zh) * 2017-06-27 2017-10-03 中国银行股份有限公司 面向多执行技术的自动化测试集中调度执行方法及系统
CN107992327A (zh) * 2017-12-07 2018-05-04 国云科技股份有限公司 一种Windows环境下编写的脚本适应于Linux的方法
CN108037948A (zh) * 2017-12-11 2018-05-15 福建中金在线信息科技有限公司 脚本管理方法、装置及系统
CN108924001A (zh) * 2018-06-26 2018-11-30 郑州云海信息技术有限公司 一种测试方法和装置
CN109189675A (zh) * 2018-08-20 2019-01-11 中国平安人寿保险股份有限公司 大数据架构软件测试方法、装置、计算机设备和存储介质
CN109240918A (zh) * 2018-08-20 2019-01-18 中国平安人寿保险股份有限公司 大数据冒烟测试方法、装置、计算机设备和存储介质
CN112699044B (zh) * 2021-01-05 2023-02-24 长沙市到家悠享家政服务有限公司 压力测试方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1877544A (zh) * 2005-06-06 2006-12-13 华为技术有限公司 关键字驱动的自动化测试系统及方法
CN102075381A (zh) * 2010-12-14 2011-05-25 云海创想信息技术(北京)有限公司 一种应用于云存储的自动化测试平台服务器及系统
CN103248535A (zh) * 2013-04-28 2013-08-14 华为技术有限公司 一种云系统测试方法及装置
CN103425472A (zh) * 2012-05-23 2013-12-04 上海计算机软件技术开发中心 基于云计算的软件测试环境动态生成系统及其实现方法
CN103488562A (zh) * 2013-08-30 2014-01-01 中国联合网络通信集团有限公司 自动化测试方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005036321A1 (de) * 2005-07-29 2007-02-01 Siemens Ag Verfahren und Vorrichtung zum dynamischen Generieren von Testszenarien für komplexe rechnergesteuerte Systeme, z.B. für medizintechnische Anlagen

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1877544A (zh) * 2005-06-06 2006-12-13 华为技术有限公司 关键字驱动的自动化测试系统及方法
CN102075381A (zh) * 2010-12-14 2011-05-25 云海创想信息技术(北京)有限公司 一种应用于云存储的自动化测试平台服务器及系统
CN103425472A (zh) * 2012-05-23 2013-12-04 上海计算机软件技术开发中心 基于云计算的软件测试环境动态生成系统及其实现方法
CN103248535A (zh) * 2013-04-28 2013-08-14 华为技术有限公司 一种云系统测试方法及装置
CN103488562A (zh) * 2013-08-30 2014-01-01 中国联合网络通信集团有限公司 自动化测试方法和装置

Also Published As

Publication number Publication date
CN105320589A (zh) 2016-02-10

Similar Documents

Publication Publication Date Title
CN105320589B (zh) 云测试环境中测试脚本自动解析系统及其实现方法
CN110221975B (zh) 创建接口用例自动化测试脚本的方法及装置
NL2010546C2 (en) Method and apparatus for automatically generating a test script for a graphical user interface.
CN109446059A (zh) 测试模板脚本的生成方法及装置
AU2017327823B2 (en) Test case generator built into data-integration workflow editor
CN108984155B (zh) 数据处理流程设定方法和装置
US20110208855A1 (en) Parameterized Computer Monitoring System
CN103838672A (zh) 一种通用报表的自动化测试方法及装置
CN107526676B (zh) 一种跨系统测试方法及装置
CN105224458A (zh) 一种数据库测试方法及系统
CN108572911A (zh) 自动化安全测试方法、装置、电子设备和可读存储介质
CN108923997B (zh) 一种基于python的云服务节点自动测试方法及装置
US10365995B2 (en) Composing future application tests including test action data
CN106033469A (zh) 用于大数据的结构化查询的高效性能预测的方法和系统
CN110298007A (zh) 用户行为统计方法、装置、电子设备及计算机可读存储介质
US11119899B2 (en) Determining potential test actions
CN112231197A (zh) 一种页面测试的方法、装置和存储介质
Krismayer et al. A constraint mining approach to support monitoring cyber-physical systems
US11615016B2 (en) System and method for executing a test case
US9507592B2 (en) Analysis of data integration job
JP2024528342A (ja) ロボティックプロセスオートメーションへの画像パターンマッチング
Heinrich et al. The palladio-bench for modeling and simulating software architectures
CN117235527A (zh) 端到端容器化的大数据模型构建方法、装置、设备及介质
JP2017522639A5 (zh)
CN106598839A (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