硬體測試工程師培訓
1. 硬體測試的目的
測試是為了發現錯誤而執行操作的過程
測試是為了證明設計有錯,而不是證明設計無錯誤
一個好的測試用例是在於它能發現至今未發現的錯誤
一個成功的測試是發現了“至今未發現的錯誤”的測試
2. 硬體測試的目標
關注點:產品規格功能的實現,效能指標,可靠性,可測試性,易用性等。
實現的保障:產品的零缺陷構築於最底層的設計,源於每一個函式、每一行程式碼、每一部分單元電路及每一個電訊號。測試就是要排除每一處故障和每一處隱患,從而構建一個零缺陷的產品。
MTBF不是計算出來的,而是設計出來的。
3. 硬體測試的意義
測試並不僅僅是為了要找出錯誤。通過分析錯誤產生的原因和錯誤 的分佈特徵,可以幫助專案管理者發現當前設計過程的缺陷,以便改進。同時,這種分析也能幫助我們設計出有針對性地檢測方法,改善測試的有效性。
沒有發現錯誤的測試也是有價值的,完整的測試是評定測試質量的一種方法。
4. 名詞解釋
l MTBF(Mean Time Between Failures):平均故障間隔時間又稱平均無故障時間。指可修復產品兩次相鄰故障之間的平均時間,記為MTBF。MTBF是衡量一個產品(尤其是電器產品)的可靠性指標。單位為“小時”。它反映了產品的時間質量,是體現產品在規定時間內保持功能的一種能力。
l FMEA(Failure Mode and Effect Analysis)失效模式和效果分析:是一種用來確定潛在失效模式及其原因的分析方法。
l 可用度(A-availability):產品在一未知時刻,需要執行任務時,處於可工作或可使用狀 態的概率。
l MTTF(MTTF-mean time to failure)平均失效前時間 :表示觀察到下次失效的期望的時間。
l MTBR(MTBR-mean time between removals) 平均拆卸間隔時間:系統壽命單位總數與從該系統上拆下的產品總次數之比。
l MTTR(MTTR-mean time to repair)平均修復時間:是在規定的時間內,修復性維修所造成的累積工作時間除以在同 一時間內所完成的修復維修活動總數得到的結果。
拆卸時間+定位時間+修理時間+安裝時間
5. 測試前準備
FMEA分析
功能框圖
嚴重等級分析
環境定義
6. 故障處理
<1>故障檢測
》 故障檢測是指明確到故障已經發生的過程,是故障處理流程的前 提。
》 這裡提到的檢測一般是指系統在故障發生後的自動的檢測,一般 不需要人進行操作。
》 在進行故障檢測的時候需要結合軟、硬體故障檢測方法。
》 某些故障可能需要多次檢測確認,避免進行誤告警和誤操作
<2>故障定位
》 故障定位是指將故障定位到現場最小可更換單元的過程,是故障 維修的基礎。
》 故障定位的目的是為了便於維修工程人員進行現場的故障維修和 返修件的故障處理。
<3>故障隔離
》 故障隔離一般是將故障限定到可更換單元內部的過程。故障隔離 的目標是將故障能夠限定在越小的功能單元。
》 故障隔離是為了將故障的影響範圍限制在儘可能小的範圍之內。
》 故障是無法避免的,如何將故障產生的影響降到最低,是故障隔 離所要考慮的關鍵。
<4>故障恢復
》 故障恢復是將系統的功能狀態恢復到故障發生前狀態的過程,是 客戶最關心的也是系統穩定執行的關鍵步驟。
》 常用的故障恢復手段有復位、冗餘倒換、重發等。
》 故障恢復儘量需要做到自動進行,以降低對使用者的影響。
7. 測試計劃
描述該測試計劃所應達到的目標如下(可依據專案的實際要求做 適當調整):
》 所有測試需求都已被標識出來;
》 測試的工作量已被正確估計併合理地分配了人力、物力資源;
》 測試的進度安排是基於工作量估計的、適用的;
》 測試啟動、停止的準則已被標識;
》 測試輸出的工作產品是已標識的、受控的和適用的。
測試計劃一般應該包含一下的內容:
》 測試物件,明確版本,範圍,任務劃分
》 角色和職責
》 測試和不被測試的特性原因
》 測試通過與否的標準
》 測試任務安排
》 測試結束的交付件
》 工作量評估
8. 測試用例
》 測試用例更多的是需要描述測試方法,測試步驟,測試的預期效 果,需要達到的指標。需要更加詳細的對每一條測試專案進行描述。
》 測試用例是直接用來指導測試的,所以對測試專案的描述需要更 具體,更便於參考操作。
測試用例的一般格式:
l 測試用例編號
l 測試專案(模組或單元)
l 測試子專案(子專案描述)
l 測試級別(必測、選測、可測)
l 測試條件(環境、儀器等相關要求)
l 測試步驟和方法(具體細緻的操作方法)
l 應達到的指標和預期效果
l 備註
9. 測試需求的來源
》 產品設計功能
根據功能的實現,分別對實現該功能的各個環節進行測試,從硬體、 單板軟體、高層軟體到使用者介面,只有各個環節都暢通無阻,才能保 證該功能的正常實現。
》 可靠性
備份、倒換、插拔、互助、自愈等
》 指標效能需求
指標包括電介面指標、光介面指標、時鐘指標、傳輸指標和指標容 差, 指標一般都有相關的標準可查。效能一般可從容量、處理能力、容限 等方面去考慮,一般是測試異常輸入條件下的單元、模組、系統處理 情況。效能測試的異常條件主要是指邊界條件、異常條件及故障相關性。
》 組網
組網需求:電信網組網、異種廠商的互聯
》 應用環境
應用環境一般可從以下幾個方面考慮: 高溫、低溫、高低溫交變、鹽霧、溼熱、防塵 接地、電源、震動、衝擊、儲存、運輸、電磁相容性、斷電恢復性
10. 硬體測試種類
(1) 訊號質量測試
基本的訊號質量測試是通過測試單板上的各種訊號質量,根據信 號種類的不同,用不同的指標來衡量訊號質量的好壞,並對訊號質量的分析,發現系統設計中的不足。
開發人員根據已有的訊號質量和時序除錯和測試方面的規範和指導書,在單板除錯階段完成對單板訊號質量的全面測試並完整記錄結果。
測試儀器——示波器
(2) 時序測試
時序測試對板內訊號時序進行除錯,驗證訊號實際時序關係是否可靠,是否滿足器件要求和設計要求;分析設計餘量,評價單板工作可靠性。開發人員根據已有的訊號質量和時序除錯和測試方面的規範和指導書,在單板除錯階段完成對單板時序(包括邏輯外部時序)的全面除錯和測試。
測試儀器——示波器,邏輯分析儀
(3) 功能測試
功能測試是根據硬體詳細設計報告中提及的功能規格進行測試, 驗證設計是否滿足要求。
功能測試是系統功能實現的基本,是需要嚴格保證測試通過率 的。如被測物件與其規格說明、總體/詳細設計文件之間存在任何差異的均需要詳細描述。
一般包含,電源、CPU、邏輯、復位、倒換、監控、時鐘、業務等。
(4) 效能測試——容限測試
指使系統正常工作的輸入允許變化範圍。容限測試的目的是通過 測試明確知道我們的裝置到底在什麼樣的條件範圍下能夠正常工作,薄弱環節到底在哪裡。
能否發現和驗證器件降額的問題,系統工作允許範圍內的臨界點上的效能。
(5) 老化測試
》由於電子類產品很多是需要長時間執行的,所以進行長時間的驗證測試是很有必要的。
》某些器件應用不當的設計,更容易在長時間的執行中,才會顯露出來。
》系統的散熱能力也只有在長時間的大功率執行時才容易暴露。
》長時間的執行才容易發生某些被忽略的偶然因素,容易發現某些潛在問題。
長時間的驗證具體的時間把握同產品的實際使用情況相關,對於通訊產品系統,一般建議測試時間要達到一星期。對於每一個功能模 塊的時間要求一般要達到兩天。
(6) 一致性測試
一致性測試是指將不同批次的產品分別取樣,進行測試驗證,考 察產品功能和效能方面的一致性的測試。
為了驗證不同生產批次的產品質量和不同批次器件的質量,是否 具有較高的一致性,是否能夠滿足產品的功能和使用條件要求。
測試要點
》 測試至少要包含3次活以上不同器件批次和生產批次的產品
》 測試專案要包含所有的功能測試專案,和重要的訊號質量和時序等 專案
》 重點需要驗證長時間的穩定性是否一致
》 如果具備條件,需要驗證在環境條件變化時(如高溫環境),各樣 品的一致性能。
(7) 可靠性測試
(一) EMC電磁相容性
》 電磁騷擾測試
• 輻射騷擾測試(RE)
• 傳導騷擾測試(CE)
• 諧波電流騷擾測試(Harmonic)
• 電壓波動與閃爍測試(Fluctuctionsand flicker)
》電磁敏感度測試
• 射頻電磁場輻射抗擾度測試(RS)
• 傳導騷擾抗擾度測試(CS)
• 電快速瞬變脈衝群抗擾度測試(EFT/B)
• 靜電放電抗擾度測試(ESD)
• 電壓跌落、短時中斷抗擾度測試(DIP/interruption)
• 工頻磁場抗擾度測試(PMS)
• 浪湧抗擾度測試(SURGE)
(二) 安規
輸入測試 溫升測試
耐壓測試 接觸電流測試
接地連續性測試 異常溫升測試
元件異常測試 鐳射輻射測試
TNV電路和地的隔離測試 TNV電路電壓測試
電容放電測試 單板安規審查 TNV電路和其它電路的隔離測試
(三) 環境試驗
一般電子類產品涉及的環境測試有以下種類:
》 氣候類
低溫貯存 高溫貯存
低溫工作 高溫工作
熱測試 溫度迴圈
交變溼熱 低溫極限試驗
高溫極限試驗 噪聲測試
》 機械振動類
包裝隨機震動試驗 包裝碰撞試驗
包裝跌落 包裝衝擊
模擬包裝運輸試驗 實地跑車
隨機振動 衝擊試驗
工作正弦震動 工作衝擊試驗 地震試驗
環境試驗注意事項
》 整個系統根據實際情況進行接地,否則不能模擬實際使用情況。
》 保持測試儀器的良好接地,以保證測試人員安全。
》 對於耐受性測試,試驗工程師必須在試驗現場看守,以防止試驗 故障導致的意外事故。並且必須在試驗區加危險警告標識。
11. 測試問題解決
站在使用者的角度看待測試問題,小問題也是問題。
》產品的最終使用者是使用者
》對於一個疑點是否屬於問題,最有發言權的是使用者
》測試工程師應該站在使用者的角度來看待每一個小問題,假設使用者看到問題表現後的反應
A. 測試問題等級
》致命:引起系統宕機或系統崩潰的問題
》 嚴重:引起系統某一功能失效且不能簡單恢復(如插拔單板)的 問題
》 一般:引起系統某一功能失效但可簡單恢復或較難重現的問題
》 提示:從操作或維護的角度發現的問題或建議
B. 測試問題種類
可重現問題每次重現(每次測試故障現象均會重複發生的問題)
偶爾重現(不定期出現的問題,暫時沒有發現觸發條件)
不可重現問題(問題只出現過一次,在後續的測試過程中沒有再次發生)
C. 測試問題定位與恢復
》定位方法
自動定位——系統通過自動檢測等手段,可以直接產生相關告警
人為定位——指通過人的現場觀察或是藉助一定的測試手段可以即可定位。
不可定位——指在現場無法定位,需要藉助專用的測試工具,或是專業的人員才有可能定位的問題
》恢復方式
自動恢復、手動恢復、不可恢復(定義參考定位方法)
12. 測試報告
測試報告一般需要包含以下內容:
》測試時間、地點、人員
》測試環境
》測試資料統計
• 測試人員等工作量統計
• 測試專案通過情況統計
• 缺陷統計
• 覆蓋率統計
遺留問題處理
》 遺留問題是指測試過程中發生的並且在測試報告時仍沒有得到解決的測試問題。測試報告時已經得到解決,並已經過迴歸驗證的測試問題不記入其中。
》 遺留問題的劃分需要非常謹慎,必須是長時間無法重現的問題, 或者由於某些特定的因素(成本等),且問題並不嚴重的才可以通過流程中各環節人員的認可被列為遺留問題。
》 遺留問題需要定時跟蹤清理,且對於一款產品需要制定一個遺留問題的數量限制。
》 即使是遺留問題也要明確跟蹤的責任人
》 遺留問題是可以在後續被重新啟用的,一旦問題重現或者條件允 許,需要重新啟用解決