軟件測試技術的發展方向

發表于:2014-08-03來源:uml.org.cn作者:不詳點擊數: 標簽:軟件測試技術
這個標題有點大,小標題是“測試團隊技術能做到的最高境界”或者是“測試技術可以往哪些方向發展”,一家之言。 個人感覺可以往兩個方向:

  這個標題有點大,小標題是“測試團隊技術能做到的最高境界”或者是“測試技術可以往哪些方向發展”,一家之言。

  個人感覺可以往兩個方向:

  一個是,水平方向,一切工具化(Automate Everything),包括把測試用例自動化,把流程自動化,開發各種各樣的工具來提高研發的效率,避免做重復的手動的事情(這些事情比較容易出錯),目的是, 讓開發專注做開發,其他事情測試來做;這些技能和具體的產品關聯小,可以應用到不同的產品中去;

  那對人的要求就是,快速開發的能力,洞察力,不斷發現問題,分析問題,解決問題的能力(也就是流程改善的能力),所謂快速開發的能力,就是比如開發人員 在開發新功能的時候,測試可以接入然后很快開發出一系列的檢查工具幫助開發避免回歸的問題;就比如醫生在診斷的時候需要的一切工具,體溫計,血壓計,心電 圖等等;

  對研發而言,這些工具包括代碼覆蓋工具,分析代碼改動的工具,代碼版本管理,代碼風險分析,bug管理,bug數據挖掘,軟件模塊依賴分析等等。

  舉些例子,關于開發一些工具來提高研發的效率;

  1、比如我自己的機器上部署了Nginx還有Php,每次要做一些Php相關的開發或者測試的時候需要把2個程序都打開,以前是手動了一個一個打開,后來想想寫個腳本,一鍵搞定:

 
start "dd" /d "d:\Download\nginx-1.0.11" nginx.exe
 
timeout 20
 
echo "nginx is started"
 
timeout 5
 
start "" "d:\Program Files\PHP\php-cgi.exe" -b localhost:9000
 
echo "php is started"

  2、測試某些軟件的時候,需要配置環境,比如代理服務,host信息等等,可以把這些動作都自動化,讓所有的人“一鍵點擊”即可部署測試環境。

  3、其實人是有惰性的,如果想讓團隊里面的人(開發,項目經理,產品經理,UI/UA工程師)參與測試,一個辦法就是讓測試變得很容易,一鍵點擊即可完成。

  4、再比如周報或者日報,可以開發一些web系統方便團隊成員寫周報或者日報,然后聚集成團隊的周報或者日報

  5、還有就是BVT(basic verification Test)把一些API的測試,簡單的冒煙測試寫成一個bat文件,開發在checkin之前很快的跑一下,沒有問題即可checkin。

  把重復的事情自動化,把需要2步或者3步做的事情一步做完,即可提高研發的效率。

  另外一個是,垂直方向,軟件測試架構師,專業化(變成Expert),比 如你一直測試搜索引擎,那么你很清楚搜索引擎的原理,你發現過各種各樣的bug,你甚至可以指導比較junior的開發人員,開發設計新功能的時候需要邀 請你,因為你知道各種各樣的問題,你可以在設計review的時候提出有價值的意見;在這個層面上,測試軟件架構師和開發架構師無異;? 這些技能和具體的產品關聯很強,只能應用到同一類的產品中;

  那對人的要求就是,要有很高的讀代碼的skill,能夠讀懂別人的代碼,可 以做code review,可以了解底層的運作;有很高的debug skill,發現問題的時候可以去root cause,從而從系統的角度上知道如何在將來比去避免這些bug,有很強的bug prevention skill;有很強的coding skill。

  舉個例子,關于如何去做review的:

  比如我要寫個Android上面的記事本,可以把數據傳輸到云上,也可以下載下來,但是不一定很頻繁;不需要實時同步;這樣我如果換手機就可以把數據下載下來,避免數據的丟失,或者遷移的麻煩;

  這些功能一旦確定下來以后,要思考的事情是,放到哪個云上(快盤,微盤還是Dropbox等等),怎么放(文件傳輸的方法,用Http,還是 Email,還是ftp,或者自己寫Socket);有哪些現成的API可以用,比如Java的httpclient的Jar包可以使用,有哪些需要自己 寫,比如文件上傳過程需要把文件讀出來編程Java Stream,需要研究哪些技術,文件上傳的Http Post方法等等;由于訪問的安全性問題,都使用了OpenID或者oAuth,那我需要研究一下 OpenID或者oAuth如何使用等等;

  測試架構師可以思考這個軟件的work flow是怎么樣的,data flow是怎么樣的,數據要存儲在哪里, 有可能有哪些漏洞,比如上面說的產品,需要考慮網絡的情況(GPRS,Wifi)和文件大小因為需要和服務器端通訊,還有安全的問題,比如需要考慮如何去 獲取secret key,會不會過期,過期后怎么辦?? 文件傳輸是否支持多線程,性能如何;文件下載到本地的時候,如果程序在運行,那么如何替換掉已經load到內存的數據,還是說先要關閉程序? 等等。

原文轉自:http://www.uml.org.cn/Test/201206151.asp

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97