QA應該更新的測試工具
作為一名QA,過去一年是我的軟體質量知識體系和自動化測試知識體系收穫最豐的一年,讓我對於軟體質量和自動化測試有了一個更高層次的認識。所以我寫下了一些自己更新了的知識,以及在和其他公司的QA交談之後發現的一些他們應該更新的知識。藉此希望能對各位看官起到一些提示或者補充作用,當然我也希望各位與我進行聯絡,並共同探討未來的QA到底應該具有什麼樣的能力和知識體系。
Web應用程式視覺感知測試
視覺感知測試,對於很多QA,包括我在2013以前對於它的認知都是手動測試領域的一個成員。在這個Web系統爆炸的年代,Web UI介面佈局測試,多瀏覽器測試,CSS的refactor等都成為了Web UI測試的痛中之痛,特別是大型Web應用的功能迴歸測試量太大,從而導致很多時候根本無法完成,所以很少會有團隊去做全方位的UI介面佈局迴歸測試,特別是對於使用Agile流程開發的團隊就更加困難。
為了緩解這樣的困境,不斷地有人思考怎麼自動化UI測試,我以前的公司就有人嘗試在手機上做自動UI測試,但是最後也沒有什麼成效。最幾年,Web應用程式發展得如火如荼,所以在去年,就有兩個工程師,一個來自於Google,一個來自於ThoughtWorks就在嘗試解決Web應用程式測試上的這個問題。不過他們的思路和以前不一樣,不是想做一個全自動的UI測試框架,而是基於Agile的持續整合和持續部署的概念上,使用半自動的方法來減少UI迴歸測試的時間,從而減少WEB應用程式UI迴歸測試的時間。
來自Google的工具是Dpxdt,而來自ThoughtWorks的是Viff. 這兩個工具的基本原理都是類似的,只是使用了不同的語言開發,以及適用的範圍有點區別。
Dpxdt是基於Python和PhantomJS開發的一個Web Service系統,其中PhantomJS可以理解為一個沒有UI的瀏覽器。使用者使用其提供的RESTFul API可以十分方便的對比兩個頁面,而且它還提供一個功能十分強大的報表系統。 對於全部是靜態頁面的Web系統來說非常適用,不過對於需要手動導航,比如需要進行輸入,點選等之後才能進行比較的頁面,它現在的版本並不適合。它還提供了一個方式可以把他很方便的部署到GWS上,所以對於國內在GFW下的使用者可以暫時不用考慮這個功能。
Viff是基於NodeJS和Selenium開發的一個本地工具。通過編寫JavaScript程式碼來呼叫Selenium API, 並在真實的瀏覽器中進行截圖比較。所以它比較適合動態的Web系統,因為可以編寫程式碼模擬使用者輸入和點選操作。由於它底層使用的是Selenium作為驅動,所以他支援多種瀏覽器,比如IE,Chrome,Firefox等。在最新的Selenium中加入了對Android和iOS的支援,不過現在還不是很穩定,所以Viff還支援Android和iOS上的瀏覽器測試。如果對你來說搭建多瀏覽器環境比較困難,比如需要同時測試IE8,IE9,IE10等,可以選擇BrowserStack。
BrowserStack是一個商業產品,他同時通過Web介面和API介面提供多瀏覽器環境給客戶進行Web測試,Viff可以使用期API進行進行多瀏覽器截圖。對於Viff,由於編寫JavaScript程式碼也需要一定的門檻,所以對於沒有程式碼能力的使用者在測試靜態網頁的時候應該選擇Dpxdt,但是如果你有一定的程式碼能力,建議選用Viff。現在Viff正在開發Web Service功能,這樣以後就可以作為一個Service進行部署和使用。
不過現在這兩個工具都還不是很成熟,還存在一些Bug,其中Viff還在繼續開發新的功能中,不過基本使用還是可以的。如果在使用這兩個工具的過程中發現任何Bug,請通過Github的Issues跟蹤功能來及時反饋給作者,幫助這兩個開源系統越來越好。我在BQConf上有一個Perceptual Testing的演講,有興趣的可以聽一聽。
下圖為實施了視覺感知測試之後對於Web系統迴歸測試的時間示意圖:
相關文章
- QA(測試) 工作準則建議
- RPG遊戲測試(QA)六要素遊戲
- 白盒測試程式碼應該怎麼測試
- 測試Leader應該做哪些事?
- 用於前端QA測試的十二種chrome外掛前端Chrome
- 服務端效能測試你應該知道的服務端
- 測試開發的方向應該如何選擇?
- 我們應該測試 DAO 層嗎?
- 測試應該怎麼學 Java 呢Java
- 測試自動化後,我們需要怎樣的QA?(深挖探索性測試)
- 別老拿 “開發測試比” 挑戰 QA
- 請問自動化測試應該測試非法資料嗎
- 關於bug,測試應該怎麼提
- 測試技術老大應該有的修養
- 開源API測試工具 Hitchhiker v0.6更新 – 改進壓力測試API
- 測試們應該知道的真相,第四點最重要
- 圖床失效了?也許你應該試試這個工具圖床
- 軟體測試應該重點關注的測試過程,廣東軟體測試公司推薦
- 單元測試-mock使用應該注意什麼Mock
- 你應該學會的Postman用法(2)-自動化測試Postman
- 解放雙手 - Android 開發應該嘗試的 UI 自動化測試AndroidUI
- Web應用程式測試的工具selenium用法詳解Web
- 初次接觸測試模型相關,請教測試過程中應該注意的內容模型
- 軟體效能測試報告應該包含的內容,效能測試報告需要多少錢?測試報告
- 對於一個 APP 測試和 web 測試應該有哪些成長呢!APPWeb
- 移動應用測試有哪些測試型別?權威的移動app測試報告該如何獲取?型別APP測試報告
- 商城網站測試報告應該怎麼寫網站測試報告
- 第三方軟體測試應該選擇現場測試還是遠端測試?
- 自動化測試工具分析和總結-實時更新
- 優秀的測試開發應該具備的六大能力
- 測試人員應該瞭解的一些基本概念
- 誰來教我滲透測試——黑客應該掌握的Windows基礎黑客Windows
- [測試工具]
- 靜態應用程式安全測試 (SAST) 工具AST
- 【星雲測試】開發者測試-採用精準測試工具對SpringBoot應用進行測試Spring Boot
- 面試官:結婚了嗎?孩子多大了?30+的女性測試人應該如何應對?面試
- 請教怎樣測試工具類的 windows 應用程式?Windows
- 如何選擇合適的移動應用測試工具?
- 網站滲透測試漏掃工具的應用技巧網站