我們需要記錄整個操作過程的日誌,這些日誌詳細記錄了過程中 主機板發生的各種事件,包括開機和關機等狀態。完成後,我們 將這些日誌檔案提交給研發部門進行分析。手動測試不需要編程,但需要仔細的去做每一部以及對此項任務的心。
-
手動測試PCB板
手動測試的主要工作是對路由器的韌體進行更新測試,以確保在整合過程中不會出現功能性錯誤。然後使用當我們將原本「裸露的晶片」穿好衣服、接好裝備後,接著我們就要測試其可用性了。我們都知道任何的電子產品製造廠都有所謂「良率」差異的問題,也因此測試這項過程其實與封裝是交互進行的。
-
Auto Test
由於我們部門主要工作為幫公司產品做測試,因此編寫程式讓電腦自動化去做處理就非常重要,可以省去非常多時間去做一些公司每天需要的routine job。而我最先拿到的任務就是學會讓電腦去自動化跑一個指令,這個需要用到selenium 函式庫 ( 模組 ) 是使用 Python 進行網路爬蟲時,必備的函式庫之一,透過 selenium 可以模擬出使用者在瀏覽器的所有操作行為包括點擊按鈕、輸入帳號密碼、捲動捲軸等等 ,因此除了爬蟲的應用,也常作為「自動化測試」使用的工具,也可以在網站開發完成後,透過自動化的腳本測試所有功能是否正常。
-網頁自動化
只需在inspect的 HTML 中複製 XPATH,然後將其貼入程式碼中,就會轉換成類似連結的程式碼。加上特定的操作行為,例如點擊(Click)、輸入(Send_keys)等。這樣可以節省大量的編碼時間。
-自動更新過程
自動化下載好每日最新版本後在丟到網關去做更新,並在每日固定時間點做軟體更新。上圖為顯示Chrome目前受到自動測試軟體控制。
-成功更新後顯示之畫面
做完自動化每日更新版本後,讓程式判斷是否能正常運作以及更換版本成功。
-
透過 API 擷取網站資料
01
再來Mentor給我用另一種方式去獲取檔案,在使用API 的二進制檔案首先都需要通過 Swagger Editor 進行解析;解析後,各項功能都被分類和整理。
02
每個功能面包含預期的回應訊息如圖 左所示及相應的 Curl 指令。最關鍵的是撰寫 Login 環境,因為在執行任何功能之前,必須先進行 Login 以取得 token,從而確保不會出現未預期的回應情況。
現行 Web API 的資料交換格式約定為 JSON與 XML。如果資料格式是 JSON 在請求資料之後會以 Python 的 dict 或 list 儲存,幾乎沒有額外的解析需求。
03
假使資料格式是 XML,則需要繼續以 lxml 搭配 XPath(在主流標記語言中以節點找尋特定資料位置之定位方法)完成解析需求。上圖為我用python向網路伺服器發出請求時回傳的 HTTP 狀態碼: