public void run()
{
while(true)
{
try
{
//將當前屏幕的截圖存入緩沖區
pushScreenshot();
//睡眠一段時間
Thread.sleep(new Double(1000*this.snapInterval).longValue());
//查看錯誤標識,一旦有錯
if(errorFlag)
{
//立即生成偽視頻
generatePseudoVideo();
//復位錯誤標識
errorFlag = false;
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
run()方法是該線程的主要方法,通過輪詢方式監測錯誤標識。如果在自動測試腳本在運行過程中有錯誤發生,它會將錯誤標識設為true;run()方法偵測發現該標識后,在第一時間內生成偽視頻,再對錯誤標識進行復位。
五、總結
新的日志方案在原有方案的基礎上進行了重構,對錯誤后截圖的功能加以萃取和改進,使原有日志系統在不追加任何軟硬件投資的前提下,能生成具有類似功能的偽視頻。測試人員能夠直觀地了解自動測試過程,快速定位測試腳本或軟件缺陷導致的錯誤成因,從而高效地優化測試腳本或填寫測試報告。
本例給出的實現使用了GIF格式的動態圖片作為生成的偽視頻,讀者可以按照類似方法,生成諸如SVG,PNG等其它格式的動態圖片來再現測試過程。
對于新日志系統中的各種各樣的表現形式:文本日志、截圖、以及偽視頻,可以使用HTML格式統一展現,有概況有明細,通過超鏈接將眾多日志內容組織在一起,讓日志系統能更加友好方便地供測試人員查閱。
文章來源于領測軟件測試網 http://www.kjueaiud.com/