告訴你如何從執行測試到管理測試(28)

文/秋之川

【目錄】

第二十八章 獨立測試環境的投入是否值得?

場景一:

準備了半天的測試數據,點擊提交按鈕時,頁面直接拋出 Error 404,之前還好好的,怎么就不能訪問了呢?我截了個圖發到研發群里。

“頁面怎么不能訪問了?五分鐘前還是好的?!蔽覇柕?。

一個服務端開發回復我說:“我剛才改了點東西,重新部署了,正在重啟服務器?!?/p>

“。。?!?/p>

這個場景你是不是看著眼熟?你們是不是也跟開發共用著一套環境?

場景二:

這次上線的所有功能在測試環境都通過驗證了,但到了生產環境,就各種功能不能正常使用,排查半天之后,不是配置文件錯了,就是數據庫表少了個新增字段。也有因為測試環境的某些配置項跟生產環境不一樣,導致有些問題到了生產環境才被發現。

在遇到了幾次類似上述場景之后,我就跟老大提出,我們得申請獨立的測試環境,并附上了我的理由:

  1. 開發環境:
  • 供開發工程師做單元測試、集成測試;
  • 只需要滿足最精簡的環境需求即可;
  • 可以多個服務共用一臺服務器;
  1. 測試環境:
  • 供測試工程師使用的,且唯一認可的測試環境;
  • 服務器的硬件配置可以略低于生產環境;
  • 程序配置文件需要和生產環境保持一致;
  • 該環境由測試工程師維護;
  • 按測試計劃部署測試版本;
  1. 預上線環境:
  • 迷你版的生產環境;
  • 服務器的硬件配置可以略低于生產環境;
  • 配置文件和相關環境因子都必須跟生產環境保持一致;
  • 供測試工程師和運維工程師做預發布驗證;
  • 作為運營和市場人員做內測使用;
  • 用于減少場景二里80%的意外情況;
  1. 生產環境:
  • 供真實用戶使用的現網環境;
  • 測試人員在部署之后做核心業務的驗證測試;
  • 測試人員用于重現測試環境無法重現的用戶問題;

隨著生產規模的擴大和對質量的要求越來越高,為了避免或減少場景一和場景二里的問題發生,投入相應的成本搭建獨立的測試環境,不管是從短期效果,還是從長期的結果去看,都是值得的。

在實際的測試體系規劃中,其實還有兩種環境也是建議獨立出來的:

  1. 自動化測試環境:
  • 用于每天自動運行自動化腳本;
  • 為了保持環境的純凈,腳本運行前后可以執行環境初始化腳本和數據清理腳本;
  1. 性能測試環境:
  • 硬件的配置建議跟生產環境保持比例關系;
  • 系統環境變量等參數保持跟生產環境一致;
  • 數據庫的數據可以基于生產環境的數據做復制和擴展;
  • 保持純凈的數據備份,用于每個輪次之后的數據初始化;

最后,從成本角度出發說一個小建議,就是這幾類環境中,有些是可以考慮采用虛擬服務器去搭建的,比如本地的開發、測試和自動化測試環境,其實預發布環境和生產環境也都可以采取虛擬服務器搭建,不過當下大多數都是用的阿里云服務,這個就不在我們考慮的范圍了。

《告訴你如何從執行測試到管理測試》帶你邁出第(28)步!,點擊這里可查看完整地圖

作者簡介:14 年測試 + 11 年項目管理 + 11 年團隊管理 = 一個測試老兵

【目錄】

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容