• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      計(jì)算機(jī)聯(lián)鎖軟件的黑盒測(cè)試過(guò)程分析與實(shí)現(xiàn)

      2018-03-01 18:57:32任麗霞
      關(guān)鍵詞:黑盒測(cè)試軟件測(cè)試用例

      任麗霞

      (西南交通大學(xué) 信息科學(xué)與技術(shù)學(xué)院,成都 610031)

      鐵路運(yùn)輸是我國(guó)重要的旅客和貨物運(yùn)輸方式之一,車(chē)站聯(lián)鎖功能的提升也是現(xiàn)代鐵路運(yùn)輸?shù)男枰?。?jì)算機(jī)聯(lián)鎖系統(tǒng)[1]是否能夠完成聯(lián)鎖邏輯功能,最重要的工作之一就是對(duì)聯(lián)鎖軟件的聯(lián)鎖邏輯運(yùn)算功能進(jìn)行測(cè)試,一方面測(cè)試聯(lián)鎖軟件的功能是否滿足軟件的規(guī)格需求說(shuō)明書(shū)并發(fā)現(xiàn)錯(cuò)誤,另一方面是為了發(fā)現(xiàn)至今為止還沒(méi)有被發(fā)現(xiàn)的錯(cuò)誤。關(guān)于軟件的測(cè)試[2],通常有人工測(cè)試和自動(dòng)測(cè)試兩種方式。人工測(cè)試需要人為地測(cè)試每一條測(cè)試用例,其中會(huì)涉及到大量重復(fù)的測(cè)試動(dòng)作,耗時(shí)耗力,效率低下。而自動(dòng)測(cè)試則用軟件代替了人工測(cè)試中重復(fù)的動(dòng)作,效率得以極大地提高,因此,自動(dòng)測(cè)試已經(jīng)成為現(xiàn)在主流的測(cè)試方式。該測(cè)試方式屬于功能測(cè)試,測(cè)試時(shí)不需要知道軟件內(nèi)部代碼的具體執(zhí)行情況,因此通常采用軟件測(cè)試方法中的黑盒測(cè)試方法。本文基于等價(jià)類(lèi)劃分法和故障樹(shù)分析法編寫(xiě)不用覆蓋率的測(cè)試用例,用python偽代碼實(shí)現(xiàn)了測(cè)試用例“進(jìn)路正常選出”。

      1 軟件測(cè)試

      1.1 測(cè)試目的

      為了驗(yàn)證一個(gè)軟件是否完成了用戶需求的功能,并發(fā)現(xiàn)尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案,在一個(gè)軟件的開(kāi)發(fā)過(guò)程中不可避免地需要對(duì)各個(gè)開(kāi)發(fā)階段進(jìn)行不同作用的測(cè)試。

      具體來(lái)說(shuō),測(cè)試的目的主要有以下3點(diǎn)[1]:

      (1)測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程;

      (2)好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案;

      (3)成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。

      為了盡可能地提高程序的正確性,更好地實(shí)現(xiàn)測(cè)試的目的,針對(duì)不同的實(shí)際情況也出現(xiàn)了不同的軟件測(cè)試方法。

      1.2 測(cè)試方法

      1.2.1 黑盒測(cè)試

      黑盒測(cè)試也叫做功能測(cè)試,關(guān)于這類(lèi)測(cè)試,測(cè)試員不需要知道具體的程序代碼,而只需要輸入相關(guān)測(cè)試數(shù)據(jù)后收集對(duì)應(yīng)的輸出結(jié)果,通過(guò)實(shí)際輸出結(jié)果與預(yù)期輸出結(jié)果對(duì)比一致性來(lái)判斷軟件是否完成了某種功能。

      黑盒測(cè)試主要在測(cè)試過(guò)程的后期使用,力求發(fā)現(xiàn)白盒測(cè)試不易發(fā)現(xiàn)的一些錯(cuò)誤:功能錯(cuò)誤、功能遺漏、界面錯(cuò)誤、外部數(shù)據(jù)庫(kù)訪問(wèn)錯(cuò)誤或數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤以及性能錯(cuò)誤等。常見(jiàn)的幾種黑盒測(cè)試技術(shù)為:等價(jià)劃分法、邊界值分析法、錯(cuò)誤推測(cè)法。

      1.2.2 等價(jià)類(lèi)劃分

      等價(jià)類(lèi)劃分后的數(shù)據(jù)類(lèi)又分為有效等價(jià)類(lèi)和無(wú)效等價(jià)類(lèi),即輸入有效和輸入無(wú)效的等價(jià)類(lèi)型。等價(jià)劃分法是一種黑盒測(cè)試技術(shù),可以類(lèi)比于數(shù)學(xué)中的合并同類(lèi)項(xiàng)。

      例如:判斷一個(gè)程序是否能實(shí)現(xiàn)“輸入一個(gè)3位正整數(shù)時(shí)相應(yīng)的輸出也為一個(gè)3位正整數(shù)”功能??梢园选?[1-9][1-9]”“00[1-9]”“[1-9][1-9][1-9]”分別看作3類(lèi)數(shù)據(jù),這時(shí),我們只需要在每一類(lèi)數(shù)據(jù)中拿出一個(gè)數(shù)據(jù)來(lái)作為輸入數(shù)據(jù)進(jìn)行測(cè)試就行了,即這3種類(lèi)型的數(shù)據(jù)為有效等價(jià)類(lèi)。而“0000”這種格式的數(shù)據(jù)明顯不屬于上述3種類(lèi)型的數(shù)據(jù),因此為一種無(wú)效等價(jià)類(lèi)。

      綜上所述,等價(jià)劃分法的重點(diǎn)和難點(diǎn)在于等價(jià)類(lèi)的劃分,即選取出有效的具有代表性的數(shù)據(jù)。

      1.2.3 故障樹(shù)分析

      安全性測(cè)試中常用的一種方法就是故障樹(shù)分析(FTA,F(xiàn)ault Tree Analysis)。故障樹(shù)分析通常分3步進(jìn)行:確定頂事件、建造故障樹(shù)、故障樹(shù)的定性和定量分析。

      1.3 測(cè)試步驟

      (2)測(cè)試軟件的測(cè)試用例數(shù)據(jù)庫(kù)向計(jì)算機(jī)聯(lián)鎖軟件輸入控制命令,計(jì)算機(jī)聯(lián)鎖軟件輸出結(jié)果并傳入測(cè)試軟件的運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù);測(cè)試軟件分析運(yùn)行結(jié)果是否與期望結(jié)果一致。如果一致,則測(cè)試下一個(gè)操作命令;如果不一致,則反饋重新生成測(cè)試數(shù)據(jù)并測(cè)試該操作命令,3次都不一致則重新排入測(cè)試命令序列等待測(cè)試;

      (3)測(cè)試軟件最后生成記錄文檔,顯示測(cè)試功能的結(jié)果。

      2 列車(chē)進(jìn)路選出黑盒測(cè)試過(guò)程與實(shí)現(xiàn)

      2.1 聯(lián)鎖軟件的測(cè)試環(huán)境

      聯(lián)鎖軟件的黑盒測(cè)試通常在一個(gè)測(cè)試平臺(tái)完成,這個(gè)測(cè)試平臺(tái)由測(cè)試軟件、被測(cè)聯(lián)鎖軟件以及車(chē)站信號(hào)設(shè)備仿真系統(tǒng)3部分構(gòu)成,測(cè)試框圖[5],如圖1所示。

      圖1 聯(lián)鎖軟件黑盒自動(dòng)測(cè)試框圖

      在測(cè)試平臺(tái)中,自動(dòng)測(cè)試過(guò)程如下。

      (1)測(cè)試軟件發(fā)送“改變狀態(tài)”的命令到車(chē)站設(shè)備仿真系統(tǒng)中,通過(guò)改變3大信號(hào)設(shè)備的狀態(tài)來(lái)模擬實(shí)際現(xiàn)場(chǎng)可能遇到的各種聯(lián)鎖情況;

      (2)仿真系統(tǒng)中各設(shè)備接受命令后改變狀態(tài),并將改變后的狀態(tài)發(fā)送至聯(lián)鎖軟件和測(cè)試軟件;

      (3)測(cè)試軟件將模擬的操作命令發(fā)送至聯(lián)鎖軟件,聯(lián)鎖軟件根據(jù)操作命令生成驅(qū)動(dòng)命令;

      (4)聯(lián)鎖軟件用驅(qū)動(dòng)命令來(lái)使仿真系統(tǒng)完成模擬操作,同時(shí),聯(lián)鎖軟件將輸出的驅(qū)動(dòng)命令發(fā)送給測(cè)試軟件,測(cè)試軟件根據(jù)輸入和輸出判定該操作命令的軟件功能是否完成;

      墨西哥民族和文化的本質(zhì)便具有混血性(mestizo)(陶家俊,2003:4)這種混血性的文化身份是帝國(guó)主義殖民擴(kuò)張和全球化的產(chǎn)物,體現(xiàn)了現(xiàn)代、后現(xiàn)代時(shí)期異質(zhì)文化間的張力。(61)

      (5)測(cè)試重新開(kāi)始1的過(guò)程,進(jìn)入到下一輪測(cè)試。

      2.2 測(cè)試軟件的構(gòu)成

      測(cè)試軟件[2]由測(cè)試用例數(shù)據(jù)庫(kù)、運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù)、分析判斷模塊、網(wǎng)絡(luò)通信模塊以及設(shè)置設(shè)備狀態(tài)模塊5部分構(gòu)成。

      測(cè)試開(kāi)始時(shí),測(cè)試用例數(shù)據(jù)庫(kù)向聯(lián)鎖軟件發(fā)送模擬操作命令,同時(shí)將該條測(cè)試用例發(fā)送至運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù)中。聯(lián)鎖軟件完成測(cè)試功能后輸出驅(qū)動(dòng)命令后將被記錄在運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù)中。此時(shí),分析判斷模塊將對(duì)比運(yùn)行結(jié)果和測(cè)試用例中期望的輸出結(jié)果,判斷出該條測(cè)試用例的期望結(jié)果和實(shí)際結(jié)果是否一致。若一致,則刪除運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù)中的該條測(cè)試;若不一致,返回到測(cè)試開(kāi)始重新進(jìn)行測(cè)試,3次測(cè)試仍然不一致后將停止該條測(cè)試用例的測(cè)試,并將每一次的測(cè)試結(jié)果和仿真系統(tǒng)的狀態(tài)信息記錄在運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù)中。

      若涉及到需要改變仿真系統(tǒng)信號(hào)設(shè)備狀態(tài)的測(cè)試時(shí),則需要通過(guò)測(cè)試軟件的設(shè)置設(shè)備狀態(tài)模塊,也就是模擬故障情況下的測(cè)試時(shí)需要用到設(shè)置設(shè)備狀態(tài)模塊。

      2.3 列車(chē)進(jìn)路選出的測(cè)試用例編寫(xiě)

      車(chē)站信號(hào)設(shè)備平面布置圖是根據(jù)站場(chǎng)線路圖繪制的,能清楚地反映站場(chǎng)信號(hào)設(shè)備的位置。聯(lián)鎖表是說(shuō)明站場(chǎng)中信號(hào)設(shè)備聯(lián)鎖關(guān)系的圖表。它們都是測(cè)試平臺(tái)中車(chē)站信號(hào)設(shè)備仿真系統(tǒng)仿真的依據(jù)和聯(lián)鎖軟件實(shí)現(xiàn)聯(lián)鎖功能的基礎(chǔ)。

      圖2 舉例車(chē)站信號(hào)設(shè)備平面布置圖

      表1 聯(lián)鎖表

      依據(jù)的車(chē)站信號(hào)設(shè)備平面布置圖和聯(lián)鎖表分別如圖2和表1所示。其中,聯(lián)鎖表只截取了列車(chē)進(jìn)路選出測(cè)試用例編寫(xiě)時(shí)涉及到的相關(guān)進(jìn)路。

      3 列車(chē)進(jìn)路選出黑盒測(cè)試過(guò)程與實(shí)現(xiàn)

      3.1 列車(chē)進(jìn)路選出的測(cè)試用例編寫(xiě)

      下面對(duì)“列車(chē)進(jìn)路選出”這一功能進(jìn)行等價(jià)類(lèi)劃分。根據(jù)傳統(tǒng)的計(jì)算機(jī)聯(lián)鎖軟件功能測(cè)試項(xiàng)目可知,針對(duì)“列車(chē)進(jìn)路選出”這一功能有正常選出進(jìn)路和故障下選出進(jìn)路兩大測(cè)試項(xiàng)目,如表2所示??梢杂貌紶栔怠癟rue”和“False”來(lái)判斷設(shè)備狀態(tài)。

      表2 計(jì)算機(jī)聯(lián)鎖“進(jìn)路選出”功能測(cè)試項(xiàng)

      3.2 故障樹(shù)分析編寫(xiě)測(cè)試用例

      根據(jù)測(cè)試用例分級(jí)要求和已有的相關(guān)經(jīng)驗(yàn),選取“進(jìn)路選出時(shí)發(fā)生危險(xiǎn)性失效”作為故障樹(shù)的頂事件,并建造故障樹(shù),如圖3所示。

      其次,需要進(jìn)行故障樹(shù)的定性分析,以確定最小割集,也就是可能引發(fā)頂事件的故障組合方式。

      圖3 進(jìn)路選出時(shí)發(fā)生危險(xiǎn)性失效故障樹(shù)框圖

      針對(duì)“進(jìn)路選出時(shí)發(fā)生危險(xiǎn)性失效”故障樹(shù),這里采用下行法進(jìn)行分析。從T1開(kāi)始為步驟1,這里的G1為一個(gè)“與門(mén)”,根據(jù)下行法的規(guī)則,這時(shí)應(yīng)該增加割集的階數(shù),于是有步驟1的{x1,M1}。M1下面是G2,即從步驟1到步驟2遇到G2這個(gè)“或門(mén)”,根據(jù)下行法的規(guī)則,這時(shí)應(yīng)該增加割集的個(gè)數(shù),又因?yàn)镸1下面是x2與x3,所以豎向展開(kāi)得割集。至此,故障樹(shù)已到達(dá)所有的底事件,故障樹(shù)分析完成。所以,該故障樹(shù)分析分為了2步,共得2個(gè)割集{x1,x2},{x1,x3}。又因?yàn)樵摳罴呀?jīng)無(wú)法再簡(jiǎn)化,因此得到的全部最小割集為{x1,x2},{x1,x3}。

      3.3 列車(chē)進(jìn)路選出的測(cè)試流程

      根據(jù)測(cè)試用例的編號(hào),測(cè)試軟件將自動(dòng)生成測(cè)試序列,然后將每一條測(cè)試用例都至少進(jìn)行一次測(cè)試。測(cè)試開(kāi)始后,輸入測(cè)試用例中的輸入數(shù)據(jù),此時(shí),聯(lián)鎖軟件會(huì)依次檢查仿真系統(tǒng)中信號(hào)設(shè)備的聯(lián)鎖條件。若進(jìn)路中軌道區(qū)段和超限絕緣區(qū)段空閑、敵對(duì)進(jìn)路未建立、道岔與進(jìn)路要求的位置一致,則是正常情況,即完成該條測(cè)試,并等待下一條測(cè)試操作指令;若以上聯(lián)鎖條件中有不正常情況,測(cè)試將轉(zhuǎn)入測(cè)試開(kāi)始階段重新測(cè)試該條測(cè)試用例,重復(fù)3次測(cè)試都不正常時(shí)也將轉(zhuǎn)入下一條測(cè)試操作指令,并把該測(cè)試結(jié)果記錄在運(yùn)行結(jié)果記錄數(shù)據(jù)庫(kù)中,以便對(duì)所有測(cè)試發(fā)生的故障情況進(jìn)行匯總。列車(chē)進(jìn)路選出的測(cè)試流程,如圖4所示。

      3.4 測(cè)試用例的實(shí)現(xiàn)舉例

      在聯(lián)鎖軟件的黑盒測(cè)試平臺(tái)上使用python語(yǔ)言[6],可以實(shí)現(xiàn)測(cè)試用例的重用、測(cè)試動(dòng)作的自動(dòng)執(zhí)行以及測(cè)試結(jié)果的報(bào)表輸出。用python語(yǔ)言實(shí)現(xiàn)測(cè)試用例是一種已經(jīng)運(yùn)用在實(shí)際測(cè)試中的方法。針對(duì)測(cè)試用例“正常選出進(jìn)路”編寫(xiě)的python偽代碼。

      圖4 列車(chē)進(jìn)路選出的測(cè)試流程圖

      輸入始終端按鈕:

      檢查敵對(duì)信號(hào)是否開(kāi)放:

      檢查超限區(qū)段是否空閑:

      檢查道岔是否與進(jìn)路選出要求的位置一致:

      當(dāng)檢查的聯(lián)鎖條件與進(jìn)路要求一致時(shí),變量x=1,否則x=0。并將x做and運(yùn)算。由and運(yùn)算的規(guī)則可知,只有當(dāng)聯(lián)鎖條件判斷后x都等于1時(shí),最終被x賦值的end才為1,即輸出“進(jìn)路選出”。否則,若聯(lián)鎖條件判斷后有至少一項(xiàng)使得x=0,最終被x賦值的end則為0,即輸出“操作失敗”。

      4 結(jié)束語(yǔ)

      (1)聯(lián)鎖軟件代替了繼電聯(lián)鎖中繼電器的動(dòng)作,避免了硬件損傷帶來(lái)的錯(cuò)誤,使得聯(lián)鎖邏輯功能具有更高的可靠性、安全性和可用性,并使得設(shè)計(jì)、施工及其維護(hù)變得簡(jiǎn)便易操作。

      (2)聯(lián)鎖軟件在測(cè)試平臺(tái)下的黑盒測(cè)試過(guò)程,并根據(jù)聯(lián)鎖軟件黑盒測(cè)試[5]的測(cè)試用例覆蓋率重點(diǎn)分析了不同等級(jí)測(cè)試用例的編寫(xiě)方法。本文選取了“列車(chē)進(jìn)路選出”這一聯(lián)鎖邏輯功能作為舉例,從測(cè)試環(huán)境、測(cè)試用例的編寫(xiě)和測(cè)試流程說(shuō)明3個(gè)方面進(jìn)行了分析,重點(diǎn)在對(duì)該功能測(cè)試的測(cè)試用例的編寫(xiě)過(guò)程介紹。

      (3)等價(jià)類(lèi)劃分法只做了簡(jiǎn)單的測(cè)試說(shuō)明,采用故障樹(shù)分析法編寫(xiě)了4級(jí)測(cè)試用例。而且論文只是用python偽代碼實(shí)現(xiàn)了一個(gè)測(cè)試用例。

      選用某一種程序設(shè)計(jì)語(yǔ)言來(lái)編寫(xiě)代碼,用代碼來(lái)模擬人工的輸入和檢查,實(shí)現(xiàn)自動(dòng)測(cè)試。這種方式不但提高了效率,也在很大程度上提高了測(cè)試的準(zhǔn)確度,因而能更好地保障聯(lián)鎖軟件的安全。

      [1]張海藩. 軟件工程導(dǎo)論[M]. 北京:清華大學(xué)出版社,2011:150.

      [2]石艷敏. 一種高效的計(jì)算機(jī)聯(lián)鎖軟件測(cè)試方法[J]. 鐵路計(jì)算機(jī)應(yīng)用,2013,22(12):50-54..

      [3]中華人民共和國(guó)鐵道部.計(jì)算機(jī)聯(lián)鎖技術(shù)條件:TB/T03027-2002[S].北京:中國(guó)鐵道出版社,2002.

      [4]王 東. 軌道交通信號(hào)系統(tǒng)仿真測(cè)試與驗(yàn)證技術(shù)研究與應(yīng)用[D]. 杭州:浙江大學(xué),2014.

      [5]張 偉,高 凡. 黑盒測(cè)試技術(shù)在城市軌道交通信號(hào)系統(tǒng)監(jiān)理驗(yàn)收中的研究與應(yīng)用[J]. 鐵路計(jì)算機(jī)應(yīng)用,2012,21(12):56-59.

      [6]劉小旭, 岳東河. 基于Python的計(jì)算機(jī)聯(lián)鎖系統(tǒng)自動(dòng)測(cè)試平臺(tái)[J]. 價(jià)值工程,2010(27):171.

      猜你喜歡
      黑盒測(cè)試軟件測(cè)試用例
      一種基于局部平均有限差分的黑盒對(duì)抗攻擊方法
      基于SmartUnit的安全通信系統(tǒng)單元測(cè)試用例自動(dòng)生成
      網(wǎng)絡(luò)自適應(yīng)測(cè)試軟件運(yùn)行方法設(shè)計(jì)
      基于混合遺傳算法的回歸測(cè)試用例集最小化研究
      自動(dòng)化檢測(cè)EPU10A板卡系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      基于依賴(lài)結(jié)構(gòu)的測(cè)試用例優(yōu)先級(jí)技術(shù)
      遠(yuǎn)程開(kāi)放教育學(xué)生自主學(xué)習(xí)能力評(píng)價(jià)的研究
      一款重型包裝抗壓系統(tǒng)控制軟件的設(shè)計(jì)與開(kāi)發(fā)
      軟件工程(2014年7期)2014-09-24 20:03:26
      軟件回歸測(cè)試用例選取方法研究
      襄城县| 乐安县| 石棉县| 鄂州市| 贡山| 蒲江县| 江北区| 高邮市| 南康市| 江山市| 公安县| 银川市| 玛曲县| 民乐县| 鹤庆县| 宁河县| 嘉鱼县| 香格里拉县| 巴塘县| 蒙阴县| 安陆市| 咸丰县| 仁化县| 兴宁市| 揭东县| 德庆县| 石首市| 如东县| 沙田区| 益阳市| 博爱县| 阜阳市| 观塘区| 玉田县| 中山市| 桂平市| 余姚市| 德昌县| 保亭| 滦南县| 融水|