複製鏈接
請複製以下鏈接發送給好友

主動測試

鎖定
主動測試(Active Test)是通過EOL診斷工具等方式對電控系統進行主動控制,並對在特定工作條件下的運行結果進行分析,得出最終的測試結論,從而完成相應的診斷功能。
中文名
主動測試
外文名
Active Test
涉及學科
信息科學
應    用
自動化
通    過
EOL診斷工具等
目    的
進行主動控制

主動測試背景

新的網絡技術和通訊設備的快速發展,使得Internet正在全球範圍內迅速擴展協議是整個網絡的靈魂,協議實現的正確及效率直接關係着網絡的穩定和效率協議測試就是用來測試協議實現是否符合協議文本規範的,因此對網絡產品進行協議測試,對發現協議實現中的錯誤,保證網絡及Internet的正常運行有着非常重要的作用。 [1] 
現在協議測試的研究主要集中在主動測試領域,主動測試以測試例為中心,由測試程序完全控制整個測試過程,測試程序負責生成測試序列,並將其發給待測協議實現( Implementation Under Test, IUT)作為對IU T的激勵,然後測試程序繼續監測IUT,看其能否做出正確的響應主動測試是一種非常有效的測試手段,但由於測試程序要與IUT直接通信,因此做主動測試時IUT一般要與網絡分離,而且目前協議越來越複雜,用主動測試的話,在測試程序編寫和測試序列構造等方面面臨着很大的困難被動測試採用了另一種思想,它不向IUT發送任何報文,而只是’被動’地監聽IU T和其他網絡設備通信時的輸入輸出行為,通過分析監聽到的數據,來推斷協議實現中是否存在錯誤被動測試比較簡單,不需要構造測試集,支持在線測試,且可以長時間進行測試而無需人工干預}‘}儘管被動測試具有上述優點,但由於它不控制測試過程,所以不能保證測試的完備性。
主動測試和被動測試被用來測試協議時各有利弊,如果能將二者結合起來,使其優勢互補,應該可以取得更好的測試效果。

主動測試主動測試介紹

主動測試是通過EOL診斷工具等方式對電控系統進行主動控制,並對在特定工作條件下的運行結果進行分析,得出最終的測試結論,從而完成相應的診斷功能。下面以結合實際發動機電控系統的設計開發為例,從以下的主動測試功能進行介紹和分析。 [2] 

主動測試排氣制動功能的主動測試

排氣制動功能是商用車的標準配置。一般情況下,排氣制動功能的使用條件包括必須在掛檔(非空擋)狀態、發動機轉速在標定轉速之上、油門踏板必須完全鬆開等所有條件都滿足的情況下,該功能才會有效,從而ECU輸出控制排氣制動繼電器動作,使排氣制動蝶閥關閉。在實際的維修過程中,一般在測試排氣制動閥輸出線路或蝶閥狀態時,由於該功能上述使用條件的限制,無法在原地進行檢測,增加了維修成本和難度。故開發該排氣制動輸出繼電器控制的主動測試功能,以便在原地靜止情況下進行維修檢查。排氣制動功能主動測試流程簡圖見圖1。
圖1排氣制動功能的主動測試流程簡圖 圖1排氣制動功能的主動測試流程簡圖
通過原地停機測試相應電氣線路是否正常正常開閉等問題可以確認排氣制動輸出的並可確認排氣蝶閥是否能。

主動測試起動功能的主動測試

發動機不能正常起動是日常遇到比較突出的問題之一,同時也是不易判斷處理的車輛故障之一。引起發動機不能起動的原因較多,比如電氣方面的故障,包括起動控制線路損壞、起動繼電器故障、曲軸和凸輪軸轉速信號故障、蓄電池電壓過低;燃油系統方面的故障,包括低壓油路供油不暢等。由於存在有多種起動失敗的原因,這就要求技術人員和售後維修人員有一定的工作經驗。才能進行綜合的正確判斷,避免造成誤判。
為能夠通過軟件實現起動故障的判別,需要開發發動機ECU和EOL工具對於起動故障的診斷功能。該診斷原理是ECU通過起動過程中的各傳感器信號狀態,包括水温、軌壓、提前角、曲軸和凸輪軸轉速信號、起動輸入開關、起動繼電器輸出、蓄電池電壓等信號,在起動失敗後綜合判斷並返回系統故障原因的狀態字。起動功能主動測試流程簡圖見圖2。
圖2起動功能的主動測試流程簡圖 圖2起動功能的主動測試流程簡圖
通過這種主動測試功能,使一般技術人員和售後維修人員面對起動這種問題的綜合處理能力得到提高,可以通過該主動測試反饋的起動失敗原因對症下藥,快速判別和處理起動故障。

主動測試壓縮功能的主動測試

由於氣缸機械方面的故障,如活塞環磨損、氣缸漏氣等,會造成發動機怠速抖動或動力不足等故障,而這類故障使用常規診斷方法是不易實現的。壓縮測試功能正是通過比較各缸相對壓縮性能(非絕對壓縮壓力)並用來評估發動機各缸氣密性問題的有效方法。
具體的主動測試方法是:在確保發動機曲軸信號正常的前提下,禁止各缸噴油,然後由起動機帶動發動機轉動,ECU軟件自動測量每缸在上止點之前和之後某一角度區間運行所需時間,通過比較各缸相同角度區間的轉速偏差來間接評估各缸的機械特性。壓縮功能主動測試流程簡圖見圖3。
壓縮功能的原理是在禁止噴油而只用起動機拖動發動機的情況下,相當於起動機拖動和壓縮排氣共同推動活塞運動;如果漏氣,相應的活塞運動速度會有差異。即比較各缸活塞在上止點之前和之後的運行速度,如存在漏氣,上止點之前活塞運動速度較快;上止點之後活塞運動速度較慢。在實際對目前量產機型的測試中,以上止點之後作為測試區間,其試驗效果更為明顯。
圖3壓縮功能的主動測試流程簡圖 圖3壓縮功能的主動測試流程簡圖
通過完成EOL軟件和ECU軟件的相應功能開發,實現上述禁止噴油的起動工況來進行壓縮測試,在對多例相同機型的試驗驗證後,得出正常機器的參考轉速值,這樣EOL軟件在完成壓縮測試後將每缸活塞的轉速偏差結果與參考值進行比較,並得出所測試發動機的測試結論和參考意見,從而為技術人員和售後維修人員提供比較客觀的數據。
壓縮功能主動測試的結果是確定曲軸角度區間的各缸轉動時間,通過簡單的換算可以得出各缸的相應轉速,從而提供給測試人員比較直觀的轉速數據對比結果。

主動測試高壓測試功能的主動測試

高壓測試是通過檢測高壓共軌系統的建壓速率和停機後油路壓力下降時間,來輔助判斷共軌系統的低壓油路是否存在堵塞、高壓油路是否存在泄漏,並檢測高壓建立效率。
高壓主動測試功能的原理是:設定在幾個不同轉速下升高和降低軌壓值,測定軌壓上升和下降階段所需時間;測試最後階段在穩定工況下自動關閉發動機,檢測高壓系統的泄漏情況。將測試的軌壓上升和下降時間與正常系統相應參考值進行比較,並得出參考結論。這樣,技術人員和售後維修人員通過該主動測試方法來快速檢測或排查噴油系統故障,例如低壓油路的堵塞、噴油器故障引起的燃油泄漏等實際問題。如果在關閉發動機工況下的系統降壓時間過快,就可以從側面反映高壓系統可能出現泄漏情況。
關於主動測試中由於測試條件不滿足而退出測試,主要是為了保護髮動機和安全的考慮。例如,在該高壓測試過程中,如果出現系統故障、水温過低、車速大於0、不在空檔等條件下,就會立即退出測試。在實際的軟件設計中,必須加入這種安全考慮,以保證主動測試功能的合理性。
高壓測試功能的主動測試流程簡圖見圖4。
圖4高壓測試功能的主動測試流程簡圖 圖4高壓測試功能的主動測試流程簡圖

主動測試加速轉速測試

加速轉速測試是通過斷缸操作來檢查噴油器特性的有效診斷方法。一般情況下,如果某缸噴油器噴油量出現偏差故障,會造成動力不足問題。加速轉速測試主動測試流程簡圖見圖5。
加速轉速測試是在設定穩定工況下進行,即車輛發動機採用設定的軌壓、噴油量、噴油次數和提前角等固定工況條件下工作,在工況穩定後開始進行該測試。測試通過按設定順序逐次斷單缸噴油,並記錄關閉單缸噴油下的最高發動機轉速,最後將各缸斷油下的最高轉速進行對比。在正常情況下各轉速應基本一致。如果出現轉速差異較大的一缸,則該缸噴油器就存在噴油故障的可能,即該缸噴油器的油量偏差過大。
圖5加速轉速測試主動測試流程圖 圖5加速轉速測試主動測試流程圖

主動測試斷缸測試

斷缸測試是針對暫停某缸噴油的方式來進行發動機故障的判別,該方法是提供給有一定經驗的技術人員使用。當某缸噴油器故障而出現霧化不良等現象時,在該斷缸測試中通過發動機聲音、排煙、轉速等變化,可以間接判斷和確定出現故障的那一缸噴油器,從而為快速診斷和維修帶來方便。
通過該主動測試方法可檢測各缸噴油器的噴油量偏差,該方法可有效檢測僅單個噴油器有缺陷的系統,而對存在多個有噴油偏差噴油器的系統診斷能力有限。該方法檢測部分負荷下的噴油器失效故障,因為無需拆解系統部件,從而避免不必要的零部件更換。
斷缸測試功能的主動測試流程簡圖見圖6。
圖6斷缸測試功能的主動測試流程簡圖 圖6斷缸測試功能的主動測試流程簡圖

主動測試總結

主動測試是一種智能測試方法,即針對不同的故障現象,結合柴油機電控系統的自診斷功能,通過外部診斷工具對柴油機進行相應的智能測試,並將測試結果按照專家系統來分析,從而指導人員進行故障判斷和排除。主動測試與常規診斷的主要區別是通過外部診斷工具對柴油機電控系統進行主動控制干預,在特定干預控制下的發動機測試數據進行分析並給出客觀的結果。目前該功能已在柴油機高壓共軌電控系統中應用。

主動測試被動測試與主動測試互補的方法

對於上面的被動測試的缺點如何解決呢?這裏從實踐中總結了被動測試與主動測試優勢互補的方法,提出了新方法:正推法及逆推法。其使被動測試的目標受到主動測試的控制,限制測試的“隨意”。 [3] 

主動測試正推法

正推法步驟
(1)按照主動測試的方法制定測試目標;
(2)根據測試目標,設計主動測試用例,但其中設計的測試輸入數據不需要具體數據,只設計出輸入數據的“要求條件範圍”;
(3)從有效歷史測試數據庫中分析抽取符合“要求條件範圍”的數據,得到測試用例的輸入數據;
(4)從對應的數據中獲取測試用例的期望輸出數據或測試通過標準。
這樣就完成了測試用例的設計。然後按照測試用例模擬運行被測軟件,比對模擬運行的結果與有效測試歷史數據庫中真實數據之間的誤差。
正推法應用實際案例
比如在一個催化裂化仿真軟件的測試中,我們在測試前期的測試計劃中選取了其中一個測試目標:正常工況下再生滑閥開度和待生滑閥開度計算的精度。
經過數據分離處理,把與測試目標無關的煙氣中氧含量、煙氣中CO含量濾掉。
把其中相關的數據(主風流量、再生温度、新鮮原料油流率、回煉油漿流率、反應温度(自動控制)、反應催化劑藏量(自動控制)、再生器壓力(自動控制)、反應器壓力(自動控制))作為測試輸入數據。把對應的再生滑閥開度、待生滑閥開度作為期望輸出。
這樣,得到測試用例的輸入數據及期望輸出數據。
總之,先制定測試目標,再從有效歷史測試數據庫搜索相關符合要求條件的數據,經過分析處理之後,得到驗證測試目標的測試用例的輸入數據及期望輸出數據。

主動測試逆推法

逆推法步驟
與上面正推法對應,其大致步驟為:
(1)依次提取分析有效歷史測試數據庫中的各組數據;
(2)根據有效歷史測試數據庫中數據的相關性,分析這些數據與哪些可能的測試目標有關係;
(3)選取其中相對重要的測試目標;
(4)根據測試目標把這些數據進行組合,合成測試用例,使其能驗證這個測試目標。
逆推法應用實際案例
比如,根據有效歷史測試數據庫中的表2數據可以得到測試目標,並得到如表通所列的測試用例的輸入及期望輸出數據。
測試目標:正常工況下反應器催化劑藏量計算的精度。
思路概括:直接分析有效歷史測試數據庫中的數據,由這些數據組合歸納得到相關的測試目標及測試用例。

主動測試正推法與逆推法的一種混合方法

正推法的主要優點是測試目標能夠主動選取,缺點是大量的有效歷史數據可能沒有充分利用。逆推法的主要優點是能充分利用有效歷史測試數據庫中的數據,缺點是數據量過大,使得人工數據分析的工作量也很大。
需要把正推法和逆推法再進一步混合互補,步驟如下:
(1)按照優先級制定7,個測試目標;
(2)循環,做如下處理:
用正推法從有效歷史測試數據庫中選取合理的數據去逐一驗證測試目標,並將每次己經使用的記錄數據做標記剔除;
(3)對有效歷史測試數據庫中剩餘的未被使用的數據運用逆推法進行分類;
(4)概括出與每一類數據相關的軟件功能或性能,分析提取出測試目標並用逆推法測試驗證。
這樣一方面既能夠主動地驗證優先的測試目標,另一方面能儘量充分利用有效歷史測試數據庫中的各組數據,儘量不浪費。實踐證明,這種方法更具有靈活性、實效性。
參考資料
  • 1.    張波,趙保華,屈玉貴,張英堂,劉桂英.被動測試和主動測試的研究:小型微型計算機系統,第25卷第12期 2004.12
  • 2.    李毅,王柯,張書朋.淺談主動測試功 在柴油機控制中的設計和應用 .山東濟南:中國重汽集團技術發展中心,2015,09
  • 3.    趙一丁,劉鳳華,鄭秋生,楚紀正,李志民.仿真軟件的被動測試與主動測試互補的研究 :計算機科學,2012.12