999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

TSRS集成自動化測試腳本自動化編制技術(shù)研究

2015-10-14 06:29:27叢向超
鐵路通信信號工程技術(shù) 2015年6期
關(guān)鍵詞:設(shè)備

叢向超

(北京全路通信信號研究設(shè)計院集團有限公司,北京 100073)

TSRS集成自動化測試腳本自動化編制技術(shù)研究

叢向超

(北京全路通信信號研究設(shè)計院集團有限公司,北京 100073)

基于數(shù)據(jù)驅(qū)動的自動化測試中,測試數(shù)據(jù)腳本生成的是否科學(xué)、正確,覆蓋所有的測試場景是決定此次自動化測試是否達到預(yù)期結(jié)果的關(guān)鍵。主要介紹一種應(yīng)用于TSRS集成自動化測試平臺上的數(shù)據(jù)腳本編制方法。

自動化測試;數(shù)據(jù)驅(qū)動;數(shù)據(jù)編制

1 概述

臨時限速服務(wù)器(TSRS)是高速鐵路列車運行控制系統(tǒng)的重要組成部分[1]。研究基于數(shù)據(jù)驅(qū)動的TSRS自動化測試系統(tǒng)在集成測試中具有非常重大的意義。

基于數(shù)據(jù)驅(qū)動的自動化測試是一種從數(shù)據(jù)文件中讀取輸入測試數(shù)據(jù),并且以數(shù)據(jù)來控制自動化測試腳本執(zhí)行流程和動作的測試[2]。在這個測試框架中,輸入測試數(shù)據(jù)是獨立于測試腳本程序開發(fā)的。數(shù)據(jù)驅(qū)動只要非常少的代碼,就能覆蓋大量的測試用例。因此在基于數(shù)據(jù)驅(qū)動的自動化測試中,測試數(shù)據(jù)生成的是否科學(xué)、正確,覆蓋所有的測試場景是決定此次集成自動化測試是否達到預(yù)期結(jié)果的關(guān)鍵。為此本文主要介紹一種運行在TSRS自動化測試平臺上的測試序列數(shù)據(jù)生成方法。

2 自動化測試軟件架構(gòu)

集成自動化測試框架由3個部分組成,分別由數(shù)據(jù)腳本編制子系統(tǒng)、自動化測試子系統(tǒng)、仿真測試子系統(tǒng)組成。

1)數(shù)據(jù)腳本編制子系統(tǒng):負責(zé)將工程數(shù)據(jù)源表轉(zhuǎn)換成應(yīng)用于集成自動化測試中的腳本數(shù)據(jù),也就是本文的主要研究對象。

2)自動化測試子系統(tǒng):啟動腳本執(zhí)行引擎,以數(shù)據(jù)腳本為驅(qū)動,執(zhí)行邏輯腳本,完成相應(yīng)測試案例的執(zhí)行。

3)仿真測試子系統(tǒng):各個仿真子系統(tǒng)完成接口仿真功能,模擬真實設(shè)備和TSRS的交互。

各個子系統(tǒng)之間的交互關(guān)系如圖1所示。

圖1 軟件模塊關(guān)系圖

TSRS自動化測試通過由計算機技術(shù)開發(fā)的自動化測試工具自動生成測試序列,通過仿真設(shè)備自動向TSRS發(fā)送限速命令,然后收集相應(yīng)的反饋信息,與測試序列中的期望結(jié)果進行比對,自動得出并記錄測試結(jié)果,測試流程如圖2所示。

圖2 測試流程示意圖

3 自動化測試腳本生成規(guī)則

在自動化測試過程中,測試數(shù)據(jù)的正確生成至關(guān)重要。通過測試工具自動生成測試數(shù)據(jù)腳本,通過仿真設(shè)備自動向TSRS發(fā)送限速命令,然后收集反饋信息,與測試序列中的期望結(jié)果進行對比,自動得出并且記錄測試結(jié)構(gòu)。測試序列決定著此次測試的覆蓋面,正確的預(yù)期結(jié)果則是此次自動測試能夠正常進行的前提條件。接下來則主要介紹測試序列和預(yù)期結(jié)構(gòu)的生成方法。

3.1 數(shù)據(jù)生成方法

基于數(shù)據(jù)驅(qū)動的自動化測試思想,結(jié)合TSRS系統(tǒng)測試的特點,提出一種測試用例和測試數(shù)據(jù)相互獨立的測試框架。測試用例順序地描述測試過程。測試數(shù)據(jù)描述限速信息和期望結(jié)果。獨立開發(fā)的仿真測試服務(wù)器進行測試調(diào)度。

使用簡單的輸入文件,測試數(shù)據(jù)有很高的維護性,測試數(shù)據(jù)采用原始的工程數(shù)據(jù)源表為測試的數(shù)據(jù)輸入,通過相應(yīng)的數(shù)據(jù)導(dǎo)入工具,轉(zhuǎn)換為測試數(shù)據(jù)庫數(shù)據(jù)具體過程,如圖3所示。

圖3 數(shù)據(jù)腳本自動生成流程

根據(jù)不同的測試場景,生成測試的臨時限速信息(TSR),存放在數(shù)據(jù)腳本中,根據(jù)生成的TSR信息計算預(yù)期結(jié)果并且和實際的結(jié)果進行對比。

生成的測試序列,采用python格式進行存儲。定義基本的數(shù)據(jù)結(jié)構(gòu)信息TSRInfo:

class TSRInfo:

def __init__(self):

self.TSRDesc =""

self.Rule =""

self.Is_execable =False

self.TSROwner_TCCCollections = []

self.TSROwner_RBCCollections = []

self.TSROwner_CTCCollections = []

self.TSROwner_AdjaTSRSCollections = []

self.TSROwner_CvTCCCollections = []

臨時限速關(guān)聯(lián)設(shè)備TSROwner結(jié)構(gòu)如下所示:

class TSROwner:

def __init__(self):

self.devname =""

self.begin_cover_flag=0

self.end_cover_flag=0

以上描述了生成的臨時限速信息以及該臨時限速關(guān)聯(lián)的設(shè)備以及覆蓋標志等信息,接下來重點分析測試的場景以及在不同場景下數(shù)據(jù)的生成方法。

3.2 測試場景分析及測試數(shù)據(jù)生成規(guī)則

3.2.1 TCC側(cè)線限速數(shù)據(jù)生成

為了測試TSRS對于當(dāng)前管轄的所有車站側(cè)線限速處理的正確性,需要生成側(cè)線限速的臨時限速序列。

在生成側(cè)線限速的測試序列時,主要是針對不同車站的不同側(cè)線區(qū)域,生成測試命令,并且預(yù)期該測試命令的接受設(shè)備和接收到的指令信息如圖4所示。

3.2.2 TCC/RBC臨時限速管轄范圍自動化測試序列數(shù)據(jù)生成

在進行測試的過程中,邊界點是最容易出現(xiàn)問題的地方,并且占據(jù)測試人員80%的測試時間。在進行TCC、RBC管轄邊界測試時,定義了如下的取點原則。

如某TCC或RBC管轄范圍為[min,max],min為管轄范圍的最小值,max為管轄范圍的最大值,利用邊界值分析,取得如下限速,分別為起點跨邊界(min-X,min+X),起點邊界外(min-X,min),起點邊界內(nèi)(min,min+X),終點跨邊界(max-x,max+x),終點邊界外(max,max+x)終點邊界內(nèi)(max-x,max),測試限速完全覆蓋和完全不在和部分覆蓋該TCC/RBC管轄范圍內(nèi)時的情況,如圖5所示。

圖4 側(cè)線限速選點示意圖

圖5 TCC/RBC臨時限速管轄范圍臨時限速測試示意圖

3.2.3 TSRS管轄范圍自動化測試序列數(shù)據(jù)生成

以TCC和RBC邊界點的最大值作為TSRS管轄范圍的邊界值,如圖6所示。選取原則同3.2.2。目前,自動化測試平臺僅針對調(diào)度臺管界和TSRS管界相同情況下進行測試。

圖6 TSRS管轄范圍測試示意圖

3.2.4 CTC管轄范圍自動化測試序列數(shù)據(jù)生成

如圖7所示,如某CTC管轄范圍為[min,max],min為管轄范圍的最小值,max為管轄范圍的最大值,利用邊界值分析,取得如下限速,假設(shè)CTC管轄范圍起終點為(min,max),X為用戶可選長度,選取臨時限速范圍為:跨CTC管轄范圍起點(min-X,max),跨CTC管轄范圍終點(min,max+X),以及覆蓋CTC管轄范圍(min,max),以測試調(diào)度臺處理TSRS處理管轄范圍內(nèi)和跨管轄范圍起點或是終點時,對于數(shù)據(jù)的處理情況。

圖7 調(diào)度臺管轄范圍選點測試示意圖

3.2.5 長鏈點和短鏈點自動化數(shù)據(jù)序列生成

如圖8所示,限速設(shè)置規(guī)則進行長短鏈點的測試。假設(shè)某長短鏈的起終點為(min,max),限速長度為X長短鏈長度為CL。分別取點起點外到起點(min-X,min),起點外到起點內(nèi)(min-X+1,min+1),起點外到終點(min-1,max),終點到終點外(max,max+X),終點內(nèi)到終點外(max-1,max+X-1),起點到終點外(min,max+1),起點到終點(min,max),起點到起點內(nèi)(min,min+ X),終點內(nèi)到終點(max-X,max),長短鏈內(nèi)(min+1,max-1)。以測試TSRS對于長短鏈邊界點的執(zhí)行情況。

圖8 長鏈點選點示意圖

3.2.6 里程標系轉(zhuǎn)換點自動化測試數(shù)據(jù)序列生成

如圖9所示,A系轉(zhuǎn)換點和B系轉(zhuǎn)換點實際為同一個點,為防止A點或是B點配置錯誤,導(dǎo)致A 和B點不為同一個點,生成如下4個限速。假設(shè)A點里程標系為mileA,B點里程標系為mileB,X為可選參數(shù),限速一為轉(zhuǎn)換點外到轉(zhuǎn)換點內(nèi)(mileA-X,mileA+X),其中mileA+X為與A點的里程標系相同而虛擬的坐標值,該限速執(zhí)行結(jié)果應(yīng)為失敗。限速二為坐標轉(zhuǎn)換點外到坐標轉(zhuǎn)換點(mileA-X,mileA)。限速三為轉(zhuǎn)換點內(nèi)到轉(zhuǎn)換點外(mileB-X,mileB+X), 其中mileB-X為與B系坐標系相同而虛擬的坐標值,限速四為坐標轉(zhuǎn)換點到坐標轉(zhuǎn)換點外(mileB,mileB+X)。

圖9 里程標系轉(zhuǎn)換點取點原則

3.3 測試數(shù)據(jù)生成算法流程

3.3.1 測試數(shù)據(jù)生成總體步驟

測試數(shù)據(jù)生成步驟如圖10所示,首先能夠根據(jù)上面的選點規(guī)則,正確的生成相應(yīng)臨時限速命令;其次能夠正確計算該命令的預(yù)期結(jié)果,包括接收到的預(yù)期設(shè)備以及預(yù)期設(shè)備接收到的命令信息。

3.3.2 原始數(shù)據(jù)預(yù)處理

完成上面步驟中的生成臨時限速信息和計算預(yù)期設(shè)備兩大功能,直接采用工程數(shù)據(jù)表中的原始數(shù)據(jù)很難完成,這就需要對導(dǎo)入到數(shù)據(jù)庫的工程數(shù)據(jù)源表信息進行預(yù)處理。

如圖11所示,橢圓部分表示一個設(shè)備的管轄范圍,其中CD為長鏈范圍,E點為里程標系轉(zhuǎn)換點。由于在普通點和長鏈點以及里程標系轉(zhuǎn)換點中,不能直接進行里程值的轉(zhuǎn)換,于是將整個管轄范圍進行處理,分成幾個管轄范圍的結(jié)合,(A,C)、(C,D)、(D,E)。數(shù)據(jù)預(yù)處理流程如圖12所示。

圖1O 測試數(shù)據(jù)生成步驟

圖11 管轄范圍內(nèi)特殊點示意圖

圖12 管轄范圍內(nèi)特殊點示意圖

對每個設(shè)備的管轄范圍根據(jù)長短鏈、坐標系轉(zhuǎn)換點進行分段是實現(xiàn)整個數(shù)據(jù)預(yù)處理的關(guān)鍵,其流程如圖13所示。

3.3.3 計算預(yù)期設(shè)備

根據(jù)不同的場景生成測試規(guī)則后,需要預(yù)期某條限速接受到的設(shè)備和接受到臨時限速信息,在前面進行數(shù)據(jù)預(yù)處理的工作下,只需要按照不同設(shè)備的不同管轄范圍分段進行順序查找即可,假設(shè)生成的臨時限速信息為(Point1,Point2),判斷起點和終點是否在某個設(shè)備的管轄范圍之內(nèi),針對TCC或是RBC時,需進行覆蓋標志判斷。填充2.1節(jié)中的TSROwner對象如圖14所示。

圖13 管轄范圍分段計算流程

圖14 計算預(yù)期設(shè)備

4 結(jié)束語

結(jié)合軟件自動化測試理論,提出基于數(shù)據(jù)驅(qū)動測試框架的TSRS自動化測試平臺自動測試序列生成方法,實現(xiàn)了測試邏輯和測試數(shù)據(jù)的分離。實驗結(jié)果表明,采用本文介紹的數(shù)據(jù)生成方法,結(jié)合自動化測試平臺,覆蓋了大部分的TSRS測試,提高了測試效率,具有廣闊的應(yīng)用前景。

[1]郭偉,開祥寶,李士祥,等.臨時限速服務(wù)器自動測試平臺的研究與實現(xiàn)[J].鐵路計算機應(yīng)用,2012(10):26-29.

[2]石坤,穆建成,葉峰.基于數(shù)據(jù)驅(qū)動的列控中心報文自動化測試研究[J].鐵路計算機應(yīng)用,2011(8):47-49.

In the automatic test based on data-driven, the expected testing result is determined by generating a scientifi c and accurate test data script and covering all test scenarios. So the paper introduces a method of generating an accurate data script applied in the TSRS integrated automation testing platform.

automation testing; data-driven; data compilation

10.3969/j.issn.1673-4440.2015.06.007

2015-07-13)

北京全路通信信號研究設(shè)計院集團有限公司科研重點項目(2300-K1150003-7-ZYY)

猜你喜歡
設(shè)備
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
調(diào)試新設(shè)備
基于VB6.0+Access2010開發(fā)的設(shè)備管理信息系統(tǒng)
基于MPU6050簡單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
廣播發(fā)射設(shè)備中平衡輸入與不平衡輸入的轉(zhuǎn)換
電子制作(2018年10期)2018-08-04 03:24:48
食之無味,棄之可惜 那些槽點滿滿的可穿戴智能設(shè)備
500kV輸變電設(shè)備運行維護探討
HTC斥資千萬美元入股虛擬現(xiàn)實設(shè)備商WEVR
IT時代周刊(2015年8期)2015-11-11 05:50:37
Automechanika Shanghai 2014 之“看” 汽保設(shè)備篇
如何在設(shè)備采購中節(jié)省成本
主站蜘蛛池模板: 欧美啪啪一区| 99精品国产电影| 国产午夜无码专区喷水| 亚洲日本韩在线观看| 福利在线不卡一区| 一本大道在线一本久道| 国产丝袜无码精品| 免费无码AV片在线观看中文| 一级毛片免费观看久| 国产成人一区在线播放| 国产高清在线精品一区二区三区 | 91精品啪在线观看国产| 亚洲国产综合精品一区| 久久国产精品麻豆系列| 国产成人乱无码视频| 亚洲中文字幕av无码区| 久久人妻xunleige无码| 亚洲无码免费黄色网址| av一区二区无码在线| 97国产在线视频| 人妻21p大胆| 亚洲天堂视频在线播放| 久久亚洲国产最新网站| 毛片久久久| 欧美激情首页| 日本国产在线| 啊嗯不日本网站| 精品综合久久久久久97超人| 欧美第一页在线| 在线精品亚洲一区二区古装| 粗大猛烈进出高潮视频无码| 97国内精品久久久久不卡| 色网站免费在线观看| 99在线视频精品| 成人精品视频一区二区在线 | 亚洲不卡av中文在线| 欧美成人精品高清在线下载| 992tv国产人成在线观看| 国产精品99久久久久久董美香| 免费高清毛片| 久久综合丝袜长腿丝袜| 免费毛片全部不收费的| 日韩无码视频专区| 国产在线高清一级毛片| 精品无码国产自产野外拍在线| 欧美日本二区| 中文字幕在线永久在线视频2020| 婷婷开心中文字幕| 无码免费视频| 老司机久久99久久精品播放| 亚洲国产精品久久久久秋霞影院| 中文字幕永久视频| a级毛片网| 日本免费福利视频| 国产系列在线| 精品视频在线一区| 国产自无码视频在线观看| 97色婷婷成人综合在线观看| 伊人久久大香线蕉aⅴ色| 18禁影院亚洲专区| 久久国产高清视频| 女同久久精品国产99国| 欧美成人午夜影院| 欧美狠狠干| a级毛片免费网站| 中文字幕久久波多野结衣| 亚洲精品波多野结衣| 亚洲二区视频| 国产免费黄| 中文字幕色在线| 国产呦视频免费视频在线观看| 欧美成人午夜在线全部免费| 免费人成网站在线观看欧美| 亚洲一级毛片免费观看| 亚洲国产精品美女| 伊人婷婷色香五月综合缴缴情| 老司国产精品视频91| 亚洲男人在线天堂| 亚洲 欧美 日韩综合一区| 无码av免费不卡在线观看| 久久www视频| 97se亚洲|