改進(jìn)措施如下:
按固定時(shí)間間隔截屏;并建立緩沖區,存儲最近一段時(shí)間內的截圖;
該緩沖區是一個(gè)先入先出隊列,只存儲最近一段時(shí)間內的截圖,隨著(zhù)自動(dòng)測試的運行,框架會(huì )按照固定時(shí)間間隔不斷地截屏,存入緩沖區。緩沖區可以有兩種實(shí)現方式:指定邏輯長(cháng)度,用來(lái)儲存某個(gè)測試用例執行時(shí)的所有截圖;或者是指定物理長(cháng)度,只存儲一定數目的截圖;
一旦在自動(dòng)測試運行過(guò)程中發(fā)生錯誤,所有被緩沖的截圖都被收集起來(lái),并轉化為動(dòng)態(tài)圖片(GIF格式,PNG格式,SVG格式等等);
動(dòng)態(tài)圖片按時(shí)間順序展示了運行過(guò)程中若干副截圖,效果類(lèi)似于視頻片斷,真實(shí)地再現了當時(shí)的測試過(guò)程。鑒于測試過(guò)程中并非每時(shí)每刻都是關(guān)鍵操作,以及測試軟件對測試對象的定位也會(huì )占用一定的時(shí)間,所以并沒(méi)有必要以過(guò)高的頻率截屏,通常來(lái)說(shuō),每秒1幀或2幀已經(jīng)可以滿(mǎn)足再現過(guò)程的需求,我們將它稱(chēng)為“偽視頻”片斷。
新方案在已有功能的基礎上,進(jìn)行重構和轉化,模擬生成視頻片斷來(lái)再現測試過(guò)程。(對測試運行過(guò)程的屏幕截圖進(jìn)行緩沖。必要時(shí),將所有緩沖的圖片轉化成動(dòng)態(tài)圖片,以再現實(shí)際過(guò)程。)
新方案的優(yōu)點(diǎn)
日志系統在采納新方案后,可以:
使得自動(dòng)測試中的錯誤定位更加快速,有利于測試人員修改測試腳本或匯報被測軟件的缺陷;
讓日志系統更加直觀(guān),直觀(guān)豐富的日志信息讓自動(dòng)測試系統的門(mén)檻降低,提高了它的可用性;
無(wú)需追加投資;新方案是以一個(gè)新思路改進(jìn)原有的截屏功能,使其呈現出更豐富更靈活的信息,并未添加軟硬件來(lái)進(jìn)行視頻捕捉。新方案的實(shí)現幾乎沒(méi)有成本,任何具有截屏能力的自動(dòng)測試系統都可以在簡(jiǎn)單改造后擁有該特性。
截屏以及生成偽視頻的操作會(huì )對腳本回放速度有一定影響,但并不突出,因為自動(dòng)測試有著(zhù)充足的硬件資源和時(shí)間資源(夜間運行)。這一弱點(diǎn)和新特性帶來(lái)的好處相比,幾乎可以忽略不計。
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/