作為測試準備審核標準的一部分,測試腳本應該被正式的接受并且在開始測試循環之前被批準。 SMEs, 業務分析人員和開發人員都應該參與到批準已錄制的測試腳本中。編寫已自動化的測試腳本的測試人員應該證明測試腳本可以成功的在QA環境中回放,如果有可能的話,可以帶上多種數據集。
錄制、回放隱藏的對象
腳本可能被錄制為增加或是雙擊表格中一個字段或字段位置沒有被固定的一個數組的值。如果表格或數組中字段的位置從開始錄制時就不斷地變化,腳本可能在回放時會失敗。測試腳本經常在回放中失敗就是因為那些沒有顯示或在屏幕中可見的對象的位置發生了改變。
為了回放那些位置敏感或位置受變更影響的腳本,有必要用功能性增強腳本,例如“向下滾屏”,“下一頁”或“查找”。包含這些實用性功能可以確保需要回放的隱藏對象將可以被識別,增加或是雙擊而不顧其在矩陣,表格,顯示的屏幕上的位置。
舉個例子,我曾經錄制果一個腳本,在最初錄制時它需要向下滾屏兩次來查找一個可以在表格中輸入的空字段。當我在幾個星期之后回放它時,我不得不向下滾屏四次來查找空字段,而不是相之前錄制的兩次。接著腳本失敗了,因此我在腳本中嵌入了邏輯判斷以指導腳本向下滾屏需要的次數來查找一個空字段。我通過在一個 “while”循環中放置一個“下一頁”("next page")功能實現了這個目的,它可以驅動腳本不停的“下一頁”(page down)直到找到空字段。
安排重運行腳本/儲存執行日志
為了繞過測試工具不能在安排測試腳本重運行的局限,測試人員可以通過可以支持多種命令行選項的NT的scheduler安排測試腳本。測試百年應該將執行日志存儲在一個共享的驅動盤或針對審核的測試結果的測試管理工具中。
為關鍵的腳本創建自動的消息通知
可以用錯誤處理程序邏輯增強測試腳本,當錯誤發生時它可以不斷的發送錯誤信息給無限設備或email地址。一些測試腳本是關鍵性的業務并且可能在午夜批量地運行。正確并成功運行這些關鍵性業務的測試腳本會作為其他自動化任務的一個依賴或者前提條件。
通常也包括在關鍵業務腳本中一旦出現失敗時自動發送消息通知的邏輯。
編制文檔
為了使測試腳本可重用并且更容易維護,文檔化所有和執行測試腳本,測試腳本的頭文件,任何執行測試腳本的特殊條件相關的信息,例如:
為了關閉書本調整所測試應用程序中的日期
更新任何需要唯一數據的字段
為了環境判斷模式(context sensitive)/ 模擬模式(analog) /位圖錄制,調整顯示器設置
列出所有有依賴的測試腳本
指出為了執行腳本需要的權限級別或用戶的角色
在什么條件下腳本會失敗,以及重新運行腳本的繞行方法
需要在腳本運行過程中打開或關閉的應用程序
指明數據的格式,例如,歐洲日期格式VS美國日期格式,等等
此外,腳本中需要包含一個描述(例如,它是干什么用的)和特別用途(例如,回歸測試)的文件頭。腳本的文件頭應該包括腳本的作者,所有者,創建和修改日期,腳本可以追溯到的需求識別符,腳本所支持的業務范圍,腳本中的變量和參數數量。在測試腳本中提供這些信息使以后的測試工作中的腳本的執行,修改和維護更容易些。
實行測試腳本的版本控制
許多公司花好幾萬英鎊購買測試工具,但是卻忽略了測試工具的副產品-錄制好的測試腳本。為了公司構建中的自動化測試腳本的庫和存儲庫,強烈建議對自動化測試腳本實行版本控制。版本控制幫助追蹤測試腳本中的變更,并可維護同一測試腳本的多個版本。
堅持測試腳本命名標準和存儲
測試腳本應當遵循項目公認的命名標準,并且應該存儲在指定的庫中,例如一個共享的驅動盤或測試管理工具中。
測試經理應當指明包括如下方面的測試腳本命名標準:
項目的名稱(例如,GSI代表著Global SAP Implementation)
版本號(例如,即將發布或部署的版本號)
主題或測試種類(例如,SC代表安全測試,LT代表負載測試)
標題或將要測試的功能(例如,來自外部供應商的采購業務)