【技术实现步骤摘要】
本专利技术属于软件自动化测试领域,具体是一种面向分布式系统自动化测试的执行控制与调度方法。
技术介绍
近年来,软件规模不断扩大,复杂度不断增加,软件质量和可靠性受到越来越多的重视。目前,软件测试技术是保证软件质量的最直接、最有效的手段。但是对于一些航天控制软件、大型武器装备软件等安全苛刻性软件,由于其代码量通常为百万行数量级,系统功能非常复杂,因此测试用例数量庞大,测试工作非常耗时,而且对于上述类型的系统软件会进行多次回归测试,只依靠人工测试会耗费太多的人力、物力。由于回归测试中用例是完全设计好的,测试期望的结果也是完全可以预料的,这就使得由软件代替人工操作,完成对被测试系统的输入,并且对输出进行检验的软件自动化测试成为可能。若将回归测试自动运行,可以让测试人员从繁琐和重复的测试活动中解脱出来,提高测试效率,缩短回归测试时间。虽然自动化测试要比人工测试快得多,但在测试用例数量庞大的时候,执行一次完整的测试有时甚至要花数天时间,导致测试周期过长。因此在对大量测试用例的自动化执行过程中,利用一种合理的测试用例执行调度方法,以进一步缩短测试时间是十分必要的。由于测试用例的执行时间未知,而且部分测试用例执行时同时需要多个主机,所以普通的任务调度方法对测试用例的执行调度是不适用的,同时由于被测系统的差异,很难找出一种通用的、高效的自动化测试执行调度方法。本专利技术针对如下分布式系统系统的网络拓扑结构固定,系统中存在多类执行节点,每一类又包含多个执行节点,同一类的执行节点之间是同构的,不同类执行节点之间是异构的。针对该分布式系统设计的每个测试用例均只在指定的一类执行 ...
【技术保护点】
1.一种面向分布式系统的自动化测试的执行控制与调度方法,其特征在于,该方法具体包括以下步骤:步骤一、测试人员在自动化测试控制端新建一个测试任务,并输入测试任务中各测试用例的基本信息,然后提交该测试任务;所述的自动化测试控制端部署在与被测系统独立的主机中;所述的测试用例的基本信息包括:测试用例的编号、预期执行时间、执行优先级、需要的执行节点类别和执行节点数目、以及测试用例执行需要的其他资源;所述的测试用例执行需要的其他资源,是指测试用例执行时除了执行节点之外需要使用的实体资源以及虚拟资源;步骤二、自动化测试控制端依次读取测试任务中每个测试用例的基本信息,将测试用例添加到未执行的测试用例链表中;步骤三、取未执行的测试用例链表中优先级最高的所有测试用例,根据执行节点类别进行分组,将在同一类执行节点上执行的测试用例分为一组,各组测试用例并行地在对应类别的执行节点上执行;步骤四、判断是否执行完所有的测试用例,若否,转步骤三执行,若是,执行步骤五;步骤五、将本次测试任务所有测试用例的执行结果显示给用户查看,结束本次测试任务。
【技术特征摘要】
1.一种面向分布式系统的自动化测试的执行控制与调度方法,其特征在于,该方法具体包括以下步骤步骤一、测试人员在自动化测试控制端新建一个测试任务,并输入测试任务中各测试用例的基本信息,然后提交该测试任务;所述的自动化测试控制端部署在与被测系统独立的主机中;所述的测试用例的基本信息包括测试用例的编号、预期执行时间、执行优先级、需要的执行节点类别和执行节点数目、以及测试用例执行需要的其他资源;所述的测试用例执行需要的其他资源,是指测试用例执行时除了执行节点之外需要使用的实体资源以及虚拟资源;步骤二、自动化测试控制端依次读取测试任务中每个测试用例的基本信息,将测试用例添加到未执行的测试用例链表中;步骤三、取未执行的测试用例链表中优先级最高的所有测试用例,根据执行节点类别进行分组,将在同一类执行节点上执行的测试用例分为一组,各组测试用例并行地在对应类别的执行节点上执行;步骤四、判断是否执行完所有的测试用例,若否,转步骤三执行,若是,执行步骤五;步骤五、将本次测试任务所有测试用例的执行结果显示给用户查看,结束本次测试任务。2.根据权利要求1所述的一种面向分布式系统的自动化测试的执行控制与调度方法, 其特征在于,所述的测试用例的编号,用于在数据库中唯一检索查询对应编号的测试用例及该测试用例对应的脚本文件。3.根据权利要求1所述的一种面向分布式系统的自动化测试的执行控制与调度方法, 其特征在于,所述的预期执行时间,通过下面公式得到2ETn=IRTl,n = 2 0, = 1其中,ETn, ETlri分别表示测试用例的第η次与第(η-1)次执行的预期执行时间,RTn+ RT1分别表示测试用例的第(η-1)次与第1次执行的实际执行时间,测试用例的第一次执行的的预期执行时间ET1设置为0。4.根据权利要求1所述的一种面向分布式系统的自动化测试的执行控制与调度方法, 其特征在于,所述的测试用例的执行优先级,具体确定方法为根据该测试用例的主要操作步骤中的动作判断该测试用例的类别,然后将该类测试用例的优先级值设为该测试用例的执行优先级;所述的测试用例的类别包括6类,按照优先级从高到低依次为在被测系统刚进入初始状态下执行的测试用例,执行添加操作的测试用例,执行查看操作的测试用例,执行编辑操作的测试用例,执行删除操作的测试用例以及执行重置操作的测试用例。5.根据权利要求4所述的一种面向分布式系统的自动化测试的执行控制与调度方法, 其特征在于,所述的测试用例,根据主要操作步骤中的动作被划分为多类测试用例时,将该测试用例的执行优先级根据被划分为的优先级最低的一类测试用例的优先级值进行设置。6.根据权利要求1所述的一种面向分布式系统的自动化测试的执行控制与调度方法,其特征在于,所述的测试任务,采用XML文件描述,具体包括以下元素用于表示一个测试任务的根元素<task>,包括两个子元素〈resources〉、<uces>以及一个用于在数据库中唯一检索该测试任务的属性;元素〈resources〉用于表示该测试任务执行过程中所要用到的测试资源,含有两个子元素<nodes>元素和<other_resources>元素,<nodes>元素用于表示被测系统中该测试任务能用的执行节点信息,每个能用的执行节点用元素<node>表示;元素〈node〉具有两个属性表示执行节点所属的类别的属性以及表示执行节点网络地址的属性;<other_res0urCes>...
【专利技术属性】
技术研发人员:储大为,尹杰,余丹,马世龙,王志超,张强,张杨,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。