一种测试脚本自动化链接方法、存储介质技术

技术编号:20992445 阅读:23 留言:0更新日期:2019-04-29 22:28
一种测试脚本自动化链接方法、存储介质,包括:(1)预先建立多维的由不同的工作状态组成的状态转换矩阵,(2)对需要进行测试的线路,按照线路的空间顺序关系依次查找测试脚本,获取具有先后测试顺序的多个测试脚本的测试脚本序列;(3)分析每个测试脚本的工作状态,查找状态转换矩阵,获取测试脚本序列中从前一个测试脚本的工作状态转换到后一个测试脚本的工作状态需要的转换条件,将转换条件写入下一个测试脚本中;(4)将测试脚本序列中的多个测试脚本顺序组合起来,形成新的完整测试脚本。本发明专利技术一条线路的测试能够自动进行,减少了手工操作的工作量,减少错误的发生。

An Automatic Linking Method and Storage Medium for Test Scripts

A test script automatic link method and storage medium includes: (1) pre-establishment of multi-dimensional state transition matrix consisting of different working states; (2) searching test scripts according to the spatial order of the lines for the lines to be tested, obtaining test script sequences of multiple test scripts with sequential test sequence; (3) analysis of each test. The working state of the script is searched for the state transition matrix, and the transition conditions needed to convert the working state of the previous test script to the working state of the latter test script in the test script sequence are obtained. The transition conditions are written into the next test script; (4) Multiple test scripts in the test script sequence are combined sequentially to form a new complete test script. The test of one circuit of the invention can be carried out automatically, the workload of manual operation is reduced, and the occurrence of errors is reduced.

【技术实现步骤摘要】
一种测试脚本自动化链接方法、存储介质
本专利技术涉及一种测试脚本自动化链接方法、存储介质。
技术介绍
在自动化测试系统中,一般用内置的文本式的测试脚本来描述测试逻辑和预期结果。自动化测试系统解释执行测试脚本,触发相应的软硬件动作,产生信号或条件,在特定的条件下获取系统反馈,与预期结果相比较,判断系统反馈是否符合预期,从而判定系统功能是否符合设计要求。在铁路列控系统(LKJ)软件自动化测试中,测试脚本与铁路线路数据密切相关,某个测试用例只测试线路的某一段。如图1,在示例的一段线路中,存在3个车站A、B、C,车站之间有数个控制列车运行的信号机。车站内有多条可以让列车停放执行旅客乘降或检修等其他技术作业的股道。每个信号机可以发出绿、黄、红、双黄等不同颜色,要求列车以低于某个限制的速度驶过信号机进入下一个线路区段或在该信号机前停车。某个测试用例只关注线路中的一段,比如测试用例1用于测试车站A及A站以后的两架信号机的运行控制,测试用例2用于测试车站C及其前后相关的3架信号机的运行控制。测试用例1在软件底层表示为一个测试脚本,测试用例2在软件底层表示为另一个测试脚本。测试中会采用顺序性地进行测试,测试用例1完成后需要对测试设备及待测设备进行软复位或应复位,以便初始化运行环境和软硬件条件,另外LKJ的某些控制参数和模式具备记忆功能,30秒内不能消除,必须断电硬复位30秒以上才能生效。这样造成执行效率比较低,影响测试工作的完成。
技术实现思路
针对目前测试脚本散乱、效率低的缺点,本专利技术提出了一种基于状态转换矩阵的具备线路空间先后关系的测试脚本自动链接方法。本专利技术采用以下技术方案:一种测试脚本自动化链接方法,包括(1)预先建立多维的由不同的工作状态组成的状态转换矩阵,所述状态转换矩阵还包括不同工作状态之间进行转换需要的条件;(2)对需要进行测试的线路,按照线路的空间顺序关系从测试脚本库中依次进行查找测试脚本或者对该线路中需要进行测试的测试脚本进行排序,获取具有先后测试顺序的多个测试脚本的测试脚本序列;(3)分析每个测试脚本的工作状态,查找状态转换矩阵,获取测试脚本序列中从前一个测试脚本的工作状态转换到后一个测试脚本的工作状态需要的转换条件,将转换条件写入下一个测试脚本中;(4)将测试脚本序列中的多个测试脚本顺序组合起来,形成新的完整测试脚本;(4)完整测试脚本中的前一个测试脚本完成后,根据转换条件对当前的测试环境进行自动修改,然后直接运行下一个测试脚本。所述测试脚本的工作状态通过LKJ控制模式、线路属性、信号机属性、控制色灯属性和列车属性五个要素的组合确定。假定测试脚本序列中具有N个测试脚本,则:建立脚本链表L,脚本链表L中的一个链表元素Li(1≤i≤N)的数据元素集合表示一个测试脚本的属性;从脚本链表L的第一个链表元素开始,遍历脚本链表L,获取每个链表元素Li的数据元素集合中代表工作状态的至少一个数据元素,通过代表工作状态的数据元素的集合对照状态转换矩阵,获取当前链表元素Li的工作状态;再次遍历脚本链表L,分析链表元素Li-1对应的测试脚本的工作状态和链表元素Li对应的测试脚本的工作状态,然后通过状态转换矩阵查找从链表元素Li-1对应的测试脚本的工作状态转换到链表元素Li对应的测试脚本的工作状态需要的转换条件;链表元素Li-1对应的测试脚本和链表元素Li对应的测试脚本通过转换条件完整链接。所述(2)中,线路的空间顺序包括线路编号、车站编号、里程公里标。测试脚本序列中每个测试脚本的获取如下:步骤1:从每个测试脚本对应的脚本文件中筛选待融合脚本列表;步骤2:对筛选出的待融合脚本列表,为每个待融合脚本中的操作元素按照操作元素的发生时间建立操作元素的时间线;步骤3:针对待融合脚本列表中的每个待融合脚本,选择不同待融合脚本中操作要素位于设定时间内的所有同类型操作要素,并选择其一作为融合后脚本的操作要素之一;步骤4:针对选择出的所有操作要素,根据各操作要素的发生时间,将各操作要素串联组合起来,生成新的融合脚本文件。所述步骤1中,从每个测试脚本对应的脚本文件中筛选待融合脚本列表的方法包括:步骤101:根据文件名称、功能、运行环境、版本、录制人、录制时间建立评价矩阵,评价矩阵包括操作要素以及其对应的向量;步骤102:遍历待融合脚本,根据评价矩阵分析各融合脚本的相似性,进行聚类分析,罗列出待融合脚本列表;步骤103:用户选择确定待融合的N个脚本文件。所述步骤101中,首先定义关键词数据库,关键词数据库至少包括文件名称关键词数据库,功能描述关键词数据库,运行环境关键词数据库,版本关键词数据库;所述关键词数据库中包括关键词及其对应的向量;对待融合脚本文件的文本进行分析并且切词,然后针对切词后的脚本文件,与关键词数据库进行比对,获取待融合脚本的功能种类。所述步骤2中,对筛选出的待融合脚本列表根据时序建立时间线的方法包括:步骤201:为待融合脚本列表中的每个脚本建立数据结构,数据结构中的元素至少包括操作要素、相对时刻;所述相对时刻根据该脚本中的第一个操作要素获取;且所述第一个待融合脚本列表的相对时刻为零;步骤202:根据待融合脚本中各操作要素的相对时刻的时序,对待融合脚本列表中每个待融合脚本的操作要素建立时间线。所述步骤3中,针对待融合脚本列表中的每个待融合脚本,选择不同待融合脚本中操作要素位于设定时间内的所有同类型操作要素,并选择其一作为融合后脚本的操作要素之一的方法包括:步骤301:从相对时刻为0的脚本开始,往后推进,遍历各待融合脚本的数据结构;步骤302:寻找相对时刻在设定时间内的不同待融合脚本的同类型操作要素,并选择其一作为融合后脚本的操作要素之一;步骤303:选定操作要素后,根据各操作要素的发生时间,将各操作要素串联组合起来,生成新的融合脚本文件。一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行所述方法的步骤。本专利技术的有益效果:(1)一条线路的测试能够自动进行,减少了手工操作的工作量,减少错误的发生;(2)操作元素的选择设定了明确的标准,避免人为感觉影响。附图说明图1为一段线路的测试示例。具体实施方式下面结合附图和具体实施方式对本专利技术作进一步详细说明。本专利技术提供一种测试脚本自动化链接方法,该方法包括以下过程:(1)预先建立多维的由不同的工作状态组成的状态转换矩阵,状态转换矩阵还包括不同工作状态之间进行转换需要的条件;(2)对需要进行测试的线路,按照线路的空间顺序关系从测试脚本库中依次进行查找测试脚本或者对该线路中需要进行测试的测试脚本进行排序,获取具有先后测试顺序的多个测试脚本的测试脚本序列;(3)分析每个测试脚本的工作状态,查找状态转换矩阵,获取测试脚本序列中从前一个测试脚本的工作状态转换到后一个测试脚本的工作状态需要的转换条件,将转换条件写入下一个测试脚本中;(4)将测试脚本序列中的多个测试脚本顺序组合起来,形成新的完整测试脚本;(4)完整测试脚本中的前一个测试脚本完成后,根据转换条件对当前的测试环境进行自动修改,然后直接运行下一个测试脚本。即本专利技术首先需要建立状态转移矩阵,状态转移矩阵中的元素包括不同的工作状态和两个工作状态之间进行转换时需要的转换条件。测试脚本的测试目标可以按照本文档来自技高网...

【技术保护点】
1.一种测试脚本自动化链接方法,其特征在于:包括(1)预先建立多维的由不同的工作状态组成的状态转换矩阵,所述状态转换矩阵还包括不同工作状态之间进行转换需要的条件;(2)对需要进行测试的线路,按照线路的空间顺序关系从测试脚本库中依次查找测试脚本或者对该线路中需要进行测试的测试脚本进行排序,获取具有先后测试顺序的多个测试脚本的测试脚本序列;(3)分析每个测试脚本的工作状态,查找状态转换矩阵,获取测试脚本序列中从前一个测试脚本的工作状态转换到后一个测试脚本的工作状态需要的转换条件,将转换条件写入下一个测试脚本中;(4)将测试脚本序列中的多个测试脚本顺序组合起来,形成新的完整测试脚本;(4)完整测试脚本中的前一个测试脚本完成后,根据转换条件对当前的测试环境进行自动修改,然后直接运行下一个测试脚本。

【技术特征摘要】
1.一种测试脚本自动化链接方法,其特征在于:包括(1)预先建立多维的由不同的工作状态组成的状态转换矩阵,所述状态转换矩阵还包括不同工作状态之间进行转换需要的条件;(2)对需要进行测试的线路,按照线路的空间顺序关系从测试脚本库中依次查找测试脚本或者对该线路中需要进行测试的测试脚本进行排序,获取具有先后测试顺序的多个测试脚本的测试脚本序列;(3)分析每个测试脚本的工作状态,查找状态转换矩阵,获取测试脚本序列中从前一个测试脚本的工作状态转换到后一个测试脚本的工作状态需要的转换条件,将转换条件写入下一个测试脚本中;(4)将测试脚本序列中的多个测试脚本顺序组合起来,形成新的完整测试脚本;(4)完整测试脚本中的前一个测试脚本完成后,根据转换条件对当前的测试环境进行自动修改,然后直接运行下一个测试脚本。2.根据权利要求1所述的一种测试脚本自动化链接方法,其特征在于:所述测试脚本的工作状态通过LKJ控制模式、线路属性、信号机属性、控制色灯属性和列车属性五个要素的组合确定。3.根据权利要求1所述的一种测试脚本自动化链接方法,其特征在于:假定测试脚本序列中具有N个测试脚本,则:建立脚本链表L,脚本链表L中的一个链表元素Li(1≤i≤N)的数据元素集合表示一个测试脚本的属性;从脚本链表L的第一个链表元素开始,遍历脚本链表L,获取每个链表元素Li的数据元素集合中代表工作状态的至少一个数据元素,通过代表工作状态的数据元素的集合对照状态转换矩阵,获取当前链表元素Li的工作状态;再次遍历脚本链表L,分析链表元素Li-1对应的测试脚本的工作状态和链表元素Li对应的测试脚本的工作状态,然后通过状态转换矩阵查找从链表元素Li-1对应的测试脚本的工作状态转换到链表元素Li对应的测试脚本的工作状态需要的转换条件;链表元素Li-1对应的测试脚本和链表元素Li对应的测试脚本通过转换条件完整链接。4.根据权利要求1所述的一种测试脚本自动化链接方法,其特征在于:所述(2)中,线路的空间顺序包括线路编号、车站编号、里程公里标。5.根据权利要求1所述的一种测试脚本自动化链接方法,其特征在于:测试脚本序列中每个测试脚本的获取如下:步骤1:从每个测试脚本对应的脚本文件中筛选待融合脚本列表;步骤2:对筛选出的待融合脚本列表,为每个待融合脚本中的操作元素按照操作元素的发生时间建立操作元素的时间线;步骤3:针对待融合脚本列表中的每个待融合脚本,选择不同待融合脚本中操作要...

【专利技术属性】
技术研发人员:白鸿钧张明凯陈宇李冠军杨清祥
申请(专利权)人:河南思维轨道交通技术研究院有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1