国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于正交試驗法的故障診斷軟件測試方法

2019-09-23 08:55:22梁海波
航天控制 2019年4期
關(guān)鍵詞:測試用例軟件測試故障診斷

姜 蘋 梁海波,2 楊 彬 李 想

1.北京航天自動控制研究所,北京 100854 2.宇航智能控制技術(shù)國家級重點實驗室,北京 100854

故障診斷軟件實現(xiàn)對控制系統(tǒng)有關(guān)設(shè)備接口的在線狀態(tài)監(jiān)測,對測量信息進(jìn)行解析和推理,完成數(shù)據(jù)的診斷和故障隔離定位。故障診斷軟件代碼量大、推理規(guī)則多,測試工作量大和測試時間長。因此在測試進(jìn)度緊張的情況下,有必要研究一種方法以縮短測試時間,盡快完成測試,同時保證測試充分性。

文獻(xiàn)[1]采用搜索尋優(yōu)算法進(jìn)行路徑覆蓋的方式來生成測試數(shù)據(jù)。文獻(xiàn)[2]通過注入一定數(shù)量故障的方法驗證測試性水平。文獻(xiàn)[3]基于靜態(tài)測試中的指針分析方法,通過分析源代碼發(fā)現(xiàn)程序運行時可能產(chǎn)生的故障。文獻(xiàn)[4]提出運用故障數(shù)最小割集技術(shù)作為輔助手段指導(dǎo)軟件測試,確定軟件故障的各種組合方法,提高軟件測試針對性,發(fā)現(xiàn)軟件潛在缺陷。然而,這些方法都不能從實質(zhì)上減少規(guī)則數(shù)目多的故障診斷軟件的測試工作量。

本文對故障診斷軟件的推理規(guī)則特征進(jìn)行了深入的需求分析,提出采用正交試驗法開展軟件測試工作,大大提高了軟件測試效率,使軟件中存在的問題得以充分地暴露出來,測試效果顯著。

1 故障診斷軟件需求特征

1.1 故障診斷軟件概述

故障診斷軟件的主要功能包括:實時監(jiān)測各種電源電壓、開關(guān)量狀態(tài)、1553B總線信息及網(wǎng)絡(luò)信息等;提取測試流程信息,對接收的數(shù)據(jù)進(jìn)行識別,生成征兆號;根據(jù)測試流程信息,在每個子流程結(jié)束后,啟動推理機軟件,通過預(yù)裝的診斷規(guī)則對故障進(jìn)行匹配,得出診斷結(jié)果。

1.2 故障診斷軟件測試需求分析

故障診斷軟件中有上千條推理規(guī)則,每條推理規(guī)則進(jìn)行基本條件判讀或復(fù)雜條件判讀。

基本條件判讀包括:模擬量判讀和開關(guān)量判讀。

復(fù)雜條件判讀包括多類型數(shù)據(jù)范圍判讀、多類型數(shù)據(jù)時間序列特征判讀、未監(jiān)聽到總線消息、當(dāng)前消息與上一拍消息比對判讀、消息狀態(tài)字判讀、消息一致性判讀、等差判讀、多類型消息滿足消息序列特征、多個消息多個數(shù)據(jù)范圍判讀、算法處理后范圍判讀及指定消息的有無判讀。

復(fù)雜條件判讀有全局條件和局部條件,全局條件有判讀開始時間、判讀結(jié)束時間和判斷成功次數(shù),局部條件是針對一次判斷而言,包括一次判斷需要數(shù)據(jù)信息應(yīng)滿足的時間范圍、數(shù)據(jù)個數(shù)和判斷方法。

每一種判讀,邏輯處理均可能為與、或、非和直推4種之一。

因此,對于上千條推理規(guī)則,開展基本條件判讀、復(fù)雜條件判讀,包含4種邏輯處理,所需的測試用例數(shù)量非常多。

2 軟件測試方法

2.1 正交試驗法

正交試驗設(shè)計方法是從大量的試驗數(shù)據(jù)中挑選適量的、有代表性的點,從而合理地安排測試的一種科學(xué)的試驗設(shè)計方法[5]。正交試驗法就是使用已經(jīng)造好了的表格-正交表來安排試驗并進(jìn)行數(shù)據(jù)分析的一種方法。這簡單易行,計算表格化,應(yīng)用性較好。

一般用L代表正交表,常用的有L8(27)、L9(34)和L8(4*24)等。此符號各數(shù)字的意義如下:

例如:L8(27),其中,7為此表列的數(shù)目(最多可安排的因子數(shù));2為因子的水平數(shù);8為此表行的數(shù)目(測試用例數(shù));又例如:L9(3*26),有6列是2水平的,有1列是3水平的,L9(3*26)的數(shù)字告訴我們,用它來設(shè)計用例,設(shè)計9個測試用例可以考察1個3水平因子和6個2水平因子。

在行數(shù)為mn型的正交表中(m,n是整數(shù)),測試用例數(shù)=因子數(shù)*∑(每列水平數(shù)-1)+1,如L9(34),9=4*(3-1)+1。利用上述關(guān)系式可以從所要考察的因子水平數(shù)來決定最少的測試用例數(shù),進(jìn)而選擇合適的正交表。

2.2 測試用例設(shè)計步驟

采用正交試驗法設(shè)計測試用例,一般按照如下步驟實施:

1)提取功能說明,構(gòu)造因子狀態(tài)表。把影響實驗指標(biāo)的條件稱為因子,而影響實驗因子的條件叫做因子的狀態(tài)。利用正交試驗設(shè)計方法設(shè)計測試用例時,首先要根據(jù)被測試軟件的規(guī)格說明書找出影響其功能實現(xiàn)的操作對象和外部因素,把它們當(dāng)作因子,而把各個因子的取值當(dāng)作狀態(tài)。確定因子與狀態(tài)設(shè)計測試用例的關(guān)鍵。因此,要盡可能全面、正確地確定取值,以確保測試用例的設(shè)計完整、有效;

2)加權(quán)篩選,生成因素分析表。對因子與狀態(tài)的選擇可按其重要程度分別加權(quán);

3)利用正交表構(gòu)造測試數(shù)據(jù)集。

3 故診軟件測試的正交試驗法

3.1 正交試驗法的應(yīng)用

由于2個或多個復(fù)雜條件的邏輯處理與2個或多個基本條件的邏輯處理相同,所以在基本判讀中驗證與、或和非的邏輯關(guān)系,復(fù)雜條件判讀中不再驗證邏輯關(guān)系的正確性。復(fù)雜條件判讀類型及對應(yīng)屬性見圖1。

圖1 復(fù)雜條件判讀類型及屬性

1)構(gòu)造因子狀態(tài)表

多類型數(shù)據(jù)時間序列特征判讀這一類的屬性包括:判讀開始時間、判讀結(jié)束時間、是否連續(xù)判讀、依賴消息、依賴數(shù)據(jù)、判讀次數(shù)及通道要求。有的規(guī)則對推理的開始時間有要求,有的對結(jié)束時間有要求,有的需要消息是連續(xù)的,有的需要依賴1553B消息,有的需要對消息多次判讀,有的對1553B的A/B通道有要求。所以,該類判讀有7大因子,每個因子的狀態(tài)見表1。

2)加權(quán)篩選,生成因素分析表

判讀一次、連續(xù)判讀、依賴1553B消息處理、對通道不進(jìn)行判讀的規(guī)則使用的數(shù)據(jù)量偏大些,在正交表設(shè)計時可適當(dāng)增加這些水平值。

3)構(gòu)造測試用例集

利用正交表構(gòu)造測試用例集,正交表內(nèi)容見表2。

表2中列號代表了各個因子,列號與因子名稱的對應(yīng)關(guān)系見表3。

多類型數(shù)據(jù)時間序列特征判讀這一判讀類型使用正交試驗法分析,包含3個2水平因子、3個3水平因子、1個4水平因子,若所有的排列組合中的規(guī)則都要提取,需要提取23*33*4=864個規(guī)則,而采用正交分析法,使用L13(23*33*4)后,最少需要提取出13個有代表的規(guī)則即可,本文中提取了15個規(guī)則,減少了849個規(guī)則的動態(tài)測試。

這只是對其中一種復(fù)雜條件判讀進(jìn)行正交試驗法分析,若對所有的復(fù)雜條件判讀均采用正交試驗法分析,將減少96.87%的工作量,具體情況如表4所示。

表1 因子狀態(tài)表

表2 正交表

續(xù)表2 正交表

表3 列號與因子對應(yīng)關(guān)系表

使用正交試驗法前需要對3483種規(guī)則進(jìn)行驗證,而使用正交試驗法后僅需選取109種規(guī)則代表這3483種規(guī)則,理論上測試工作量減少了96.87%。

3.2 測試用例設(shè)計

使用正交試驗法提取規(guī)則后,還要對規(guī)則設(shè)計用例。

按照表2中第1行的方法提取規(guī)則,該規(guī)則中的故障原因和根據(jù)該原因產(chǎn)生的故障提示信息如表5所示。該規(guī)則無開始時間要求、無結(jié)束時間要求、判讀多次、消息無連續(xù)要求、依賴1553B消息、依賴消息中的時序類型碼及不判A/B通道。

表4 正交試驗法前后的比對情況

表5 規(guī)則描述

該規(guī)則的3個時間點中有1個不符合要求,即報出故障信息。由于3個時間段的分析方法相同,這里僅以開始時間49010ms、時序?qū)挾?0ms為例進(jìn)行分析,采用等價類劃分方法和邊界值分析法,設(shè)計用例如表6所示。

3.3 實施效果

通過引入正交試驗法對故障診斷軟件進(jìn)行測試,原預(yù)計24人月才能完成的測試任務(wù),由2人在近1個月的時間內(nèi)完成,測試效率提高約91.67%,考慮到測試過程受測試環(huán)境搭建與變更、以及人為因素等影響,實際測試效率與理論計算值量級相當(dāng)。更為重要的是,在測試過程中發(fā)現(xiàn)了20余個功能問題,這些問題并不孤立,而是極具代表性的。在判讀類型相同的情況下,若被選取的規(guī)則有問題,代表著與此相同配置的所有規(guī)則均可能存在問題。在此基礎(chǔ)上,軟件開發(fā)方與軟件測試方共同就上述20余個功能問題進(jìn)行了舉一反三,累計發(fā)現(xiàn)同類型問題147項,確保了軟件測試工作的測試充分性和測試覆蓋性。如果這些問題沒有被及時發(fā)現(xiàn),故障診斷軟件可能在故障出現(xiàn)時未能準(zhǔn)確報出故障信息,或者在無故障出現(xiàn)時錯誤地提示故障內(nèi)容,造成現(xiàn)場監(jiān)控人員無法及時發(fā)現(xiàn)故障或誤判故障,帶來較為嚴(yán)重的后果。此外,故障診斷軟件應(yīng)用方試驗人員將更改后的軟件投入系統(tǒng)綜合試驗、預(yù)案驗證試驗、故障模擬試驗等大型試驗進(jìn)行驗證,故障診斷軟件功能正常,所有規(guī)則執(zhí)行正確,進(jìn)一步驗證了采用正交試驗法對故障診斷軟件進(jìn)行測試的有效性。

表6 設(shè)計測試用例

4 結(jié)束語

針對故障診斷軟件代碼量大、規(guī)則多,無法在測試進(jìn)度緊張的情況下進(jìn)行充分測試的問題,本文提出了基于正交試驗法提取有代表性規(guī)則的故障診斷軟件測試方法。在某型號故障診斷軟件的測試工作中,驗證了該方法的正確性和有效性,為提高故障診斷軟件測試效率,減少測試人員工作量有很大幫助。

猜你喜歡
測試用例軟件測試故障診斷
基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
基于OBE的軟件測試課程教學(xué)改革探索
計算機教育(2020年5期)2020-07-24 08:53:20
EXCEL和VBA實現(xiàn)軟件測試記錄管理
電子制作(2018年16期)2018-09-26 03:27:18
基于混合遺傳算法的回歸測試用例集最小化研究
關(guān)于軟件測試技術(shù)應(yīng)用與發(fā)展趨勢研究
電子測試(2017年15期)2017-12-18 07:19:20
軟件測試工程化模型及應(yīng)用研究
因果圖定性分析法及其在故障診斷中的應(yīng)用
基于依賴結(jié)構(gòu)的測試用例優(yōu)先級技術(shù)
基于LCD和排列熵的滾動軸承故障診斷
基于WPD-HHT的滾動軸承故障診斷
機械與電子(2014年1期)2014-02-28 02:07:31
太康县| 崇州市| 德令哈市| 印江| 双峰县| 铁岭市| 福贡县| 大丰市| 江油市| 濉溪县| 广东省| 永宁县| 奉化市| 郎溪县| 哈密市| 长治市| 永新县| 太康县| 平潭县| 利津县| 葫芦岛市| 游戏| 罗定市| 樟树市| 赣榆县| 彩票| 勐海县| 元氏县| 东方市| 双城市| 甘谷县| 罗源县| 商南县| 邯郸市| 焦作市| 大埔区| 伊春市| 盘山县| 明星| 固原市| 石景山区|