無論是什麼類型的系統,都可以從測試類型角度來考慮測試。
系統測試回顧
測試階段:
1、單元測試,測試函數/方法,需要知道函數內部的邏輯設計,一般採用的是白盒測試方法。
2、集成測試,測試接口,需要知道接口的規格,一般採用的是灰盒測試方法。
3、系統測試,測試整個軟件,需要知道軟件的整體特性,一般採用的是黑盒測試方法。
4、驗收測試,測試整個軟件
軟件質量模型:
1、功能性,對應功能測試
2、效率,對應性能測試
3、易用性,對應易用性測試
4、可靠性,對應可靠性測試
5、可移植性,對應兼容性測試
針對系統可以有不同的測試類型,一般可以粗分為功能測試和非功能測試。將來工作中主要接觸的功能測試、性能測試、兼容性測試等。
針對傳統的信息管理系統(比如淘寶中註冊、登錄、購物車等),直接使用黑盒測試方法即可。但是對於淘寶中智能商品推薦以及頭條中智能新聞推薦,無法用黑盒方法進行充分的測試。
大數據測試
對於大數據系統,不能僅僅從界面角度來考慮測試,需要從大數據的處理流程上來針對每個流程環節做測試。
大數據測試從測試類型角度可以重點考慮:
1、功能測試
2、性能測試
3、可靠性測試
功能測試
1、業務測試,從界面站在用戶角度來進行測試(黑盒)。比如今日頭條中智能推薦,從用戶角度,每次刷新得到的新聞和以前的不能重複。只要可以被推薦的新聞沒有展示完,再次刷新都可以獲得推薦的新聞。
2、數據採集測試,針對不同數據源的數據進行採集的代碼是否正確。重點檢查數據類型、數據取值範圍。(灰盒)
3、ETL測試,測試數據的處理。重點檢查數據的完整性、正確性。(灰盒)
4、MapReduce測試,開發人員用java實現了MapReduce的處理邏輯,測試人員可以使用hive查詢出結果和開發人員的代碼得到的結果做比較。(灰盒)
5、算法測試,檢查數據分析的算法是否正確。(灰盒/白盒)
ETL測試
需要通過QuerySurge工具來了解etl測試思路,瞭解大數據測試到底在測試啥。
Querysurge基本使用:
1、開始菜單中運行Launch QuerySurge
2、輸入admin/admin登錄。
一共有5個模塊:
1)Design Menu,設計測試
2)Scheduling Menu,測試執行計劃
3)Run Menu,實時運行測試
4)Reports,執行報告
5)Administration Menu,系統管理
結合一個案例:
有家電子產品公司叫Zcity,其主要競爭對手叫Xmart,Zcity希望把它自己的經營數據和Xmart的經營數據放在一起做分析。需要將兩家公司的數據通過ETL處理後放入數據倉庫中,供後續數據分析使用。Zcity的數據來自於業務系統的數據庫,Xmart的數據來自於收集整理的數據文件。
數據對應有:
1)Zcity數據庫數據
2)Xmart文件數據
3)數據倉庫數據
3、通過查看系統管理中的View Connections來查看各個數據
4、用navicat訪問mysql數據庫,查看Zcity數據庫數據和數據倉庫數據。
User name和password相同。
Dw庫中的數據是經過etl處理後載入數據倉庫的數據。Etl的處理靠代碼或者sql語句來實現,需要進行測試,檢查數據倉庫中的數據和源數據是否一致。
5、在design menu中操作design library
分別將Zcity中的數據和Xmart中的數據與DW數據倉庫中的數據進行比較。
每個紅框對應一個測試。
分別針對Zcity數據庫和DW數據庫編寫sql腳本,將兩個腳本運行得到的結果做比較。比較內容如下:
檢查兩邊數據的數據類型、計數、取值是否一致。
設計測試時可以運行查看結果。
6、創建測試集(Test Suites)將需要執行的測試打包在一起。
7、針對測試集設定執行計劃
8、執行執行計劃後得到報告
注:etl會從收貨地址或者付款地址抽取city信息出來。
版權聲明:本文出自51Testing會員投稿,51Testing軟件測試網及相關內容提供者擁有內容的全部版權,未經明確的書面許可,任何人或單位不得對本網站內容複製、轉載或進行鏡像,否則將追究法律責任。