服務器“壓力測試”作為互聯(lián)網行業(yè)必修課已遍布電商平臺、視頻網站、游戲運營等眾多應用場景。
但一臺合格服務器出廠只有“壓力測試”就足夠了嗎?就此,寧暢信息產業(yè)(北京)有限公司的測試工程師,就給出了詳細解答。
服務器“誕生”至少經上千項測試
寧暢測試負責人表示,要生產出具備“德智體美勞”全面素質的服務器,需要通過不斷測試,使其硬件功能穩(wěn)定,電性能可靠,信號質量純凈。
每一臺寧暢服務器在電性能測試方面,需經過如:Base function基本驗證測試;Efficiency 效率測試;Inrush Current電流沖擊測試;Overshoot & Undershoot 過沖和下沖測試;Phase margin相位裕度驗證;Voltage 電壓測試;Power rail 的Open & Short、Voltage、Leakage漏電測試;Sequencing 上電時序以及Clock基本測試,以及重要的CPU VRM測試。
只有信號純凈,才能保證數(shù)據傳輸時的質量。寧暢服務器不僅測試高速總線,如PCIE、SAS、SATA、UPI、DMI、DDR、 USB2.0/3.0、10GBASE-KR、10GBASE-T、GbE、 Clock、10G/25G Serdes以及NCSI等信號。低速總線,如SMBus、I2C、IPMB、SPI、 eSPI、LPC、VGA、Power Good and Reset等信號也會全部檢查。
在板級嚴謹測試外,寧暢服務器還需做全面兼容性測試,如針對每一個客戶的AVL,像內存、硬盤(HDD,SSD,NVMe)、網卡、陣列卡等常見擴展卡的兼容性測試,同時這些測試都會使用客戶自用操作系統(tǒng)去做全面驗證,模擬客戶體驗并給出反饋;其中針對Performance的調優(yōu)測試,寧暢產品多次打破Spec Bechmark的記錄。
服務器在通常環(huán)境下可順暢運行,遇到“高溫”、“高濕”等嚴苛環(huán)境也得能“吃土耐勞”。
寧暢測試團隊本著“寧靜、順暢”理念,全面設計了“Thermal散熱測試和Reliability(可靠性)測試”,其覆蓋環(huán)境有:高溫高濕場景;低溫場景;鹽霧場景;HALT加速壽命測試場景;Four Corner拉偏和AC loss等疲勞測試場景。
此外,Drop跌落、Shock沖擊、Vibration震動、 Storage倉儲測試,電磁兼容電磁干擾(electromagnetic interference, EMI)和電磁耐受性(electromagnetic susceptibility, EMS)這些都是產品包裝、運輸、上線和離線場景下必須測試環(huán)節(jié)。
做完以上基礎測試,還得根據用戶需求做特定軟件環(huán)境與應用場景(包括壓力測試)等等性能與穩(wěn)定性測試。
一款合格的服務器產品,從設計生產到真正交付用戶,粗算每臺做一千項測試是妥妥的。
但是!僅做這些測試,還不能保證服務器達到寧暢標準出廠。
超4萬項用例測試實現(xiàn)自動化
針對測試中發(fā)現(xiàn)的Bug,研發(fā)工程師需做系統(tǒng)性及時調整與處理。往往一個信號干擾問題,就需要經過多輪調試。
關鍵,服務器產品交付都是短時間成千上萬臺,要讓每臺服務器經過數(shù)千項測試并及時調整Bug,則需要構建系統(tǒng)的自動化測試體系,并在產品研發(fā)和滿足用戶定制化的過程中同步進行測試,以保證產品可按時、高質量地交付到用戶手中。
“好比一臺車要在高速路上邊跑邊組裝、邊檢驗,車停下來便完成所有測試與裝配,用戶接過方向盤就可開走?!睂帟硿y試負責人介紹“邊造邊測”非常考驗寧暢測試與研發(fā)人員的技術功底與經驗積累,關鍵還得掌握測試體系與產品研發(fā)的核心技術。
行業(yè)發(fā)展來看,只有將客戶測試需求全面實現(xiàn)自動化,才能更好為客戶服務,提供高質量產品。
而從行業(yè)中來看,如寧暢一樣具備全面自動化測試能力廠商,僅占廠商總數(shù)量的2%左右?!俺巳肆?、物力上的投入,關鍵還得有相關用例經驗積累?!睂帟硿y試負責人表示,服務器測試自動化門檻很高,不僅需要測試人員,還需研發(fā)人員,在了解服務器同時掌握眾多語言等技能。
圖說:不同廠商測試能力比較
諸如Shell,Python,C,Java,Go,Ruby等工具語言需要掌控;如Jenkins,Django,react,F(xiàn)lask等架構理解也必不可少。只有掌握這些基礎技能,才能面向不同業(yè)務采用不同語言與框架,如:圖像數(shù)據處理要采用難度較高的OCR技術。一套完整測試系統(tǒng)需經過十幾年的千錘百煉,才能為客戶提供既敏捷又高效的服務。
圖說:寧暢自動測試體系架構
目前,寧暢具備自主研發(fā)測試相關軟件/硬件能力,可構建自動化測試平臺,實現(xiàn)面向用戶提供測試體系。寧暢自動化測試平臺NASA(Nettrix Autotest and Stress Application)從測試環(huán)境搭建、測試、測試日志收集、測試數(shù)據分析,到最后的測試bug提交,已實現(xiàn)全面自動化,測試用例自動化覆蓋高達95%以上。
圖說:寧暢自動化任務、服務器管理界面
其中:BMC Lab測試用例14000+項,自動化覆蓋95%;BIOS Lab測試用例9700+項,自動化覆蓋 98%;Hardware Lab測試用例14000+項,自動化覆蓋 93%;Performance Lab測試用例5700+項,自動化覆蓋 97%。
此外,寧暢智能測試故障分析引擎,通過知識庫黑白名單對比,對Bug實現(xiàn)自動定位、自動提交,并通過整合基礎設施和業(yè)務調度,以及數(shù)據挖掘技術提升測試有效性,為客戶提供全鏈路的質量保障。