2014年自動化的個人感想
自己在2014年寫的自動化的感想和規劃
測試開發大勢所趨
1、互聯網在深耕細作的發展階段需要測試發揮更多的影響。
2、技術在測試工作中的占比無限的趨近開發。
3、建立學習型和成長型的測試團隊。
4、持續關注個人的成長,測試人員更注重價值體現。
PPT解讀: 1、互聯網是快速發展的行業,時刻需要idea迅速的轉化為生產力。頻繁迭代的開發,追求建立快速的響應機制,要求測試的時效性。較短的測試排期需要加入技術成分從而替代手工回歸測試所帶來的工作量。
2、測試是技術崗,測試環節的上游是代碼產品,對上游環節的摸索和嘗試是不可拒絕的。測試人員越來越了解和參與開發職位的工作既可以起到測試前置的作用也可以擴大測試的范圍。測試和開發必將在未來融合。
3、測試團隊需要持續發展的節奏,技術成長是其中的重要一環。學習型的團隊最具競爭力、戰斗力和向心力。
4、功能測試是互聯網時代產物,也會隨著時代的發展而消亡。測試人員普遍存在危機感,對于測試技術的學習和成長要求是迫切的。測試人員越來越不滿足于手工測試所帶來的成就感。
自動化技術的應用場所
1、功能回歸測試、冒煙測試。
2、數據精度要求高的測試,數據計算、比較、統計測試。
3、簡單重復的大批量測試,測試組合眾多,需要測試覆蓋。
4、疲勞測試。
5、接口、底層、代碼測試。
6、其他不便于進行手工的測試。
PPT解讀: 自動化測試是個較大的范疇,所有不用手工進行操作通過程序驅動的測試都可以理解為自動化測試。從技術層面來講,但凡被技術實現的東西都可以被技術模擬和測試。在人們實踐的過程中,自動化技術應用的領域會越來越廣,測試也是一樣,自動化本身不會去約束方式和行為,自動化能夠做什么會超出我們的想象。
POP的自動化領域
1、平臺SOA化
2、大數據量和云計算
3、數據挖掘
4、移動互聯網
PPT解讀: O2O做為2014年京東的戰略在POP端會持續發酵。平臺的發展需要模塊化,越來越來可適配。公共模塊直接會被底層服務化,而前端模塊大量的被暴露數據接口,更多的測試要求在不可視化的情況下進行。POP的發展積累了龐大的歷史數據和商家數據而且還在增長,對于海量數據進行遷移、計算、合并、修改和數據挖掘,需要精準的完成數據測試,需要倚賴自動化測試。雖然移動端未在POP中應用,但是商家說不定哪天就有在手機上管理商品的需要,移動端在POP的布局現在沒影,但是需要的時候也會很迅猛,這些都需要我們未雨綢繆。
為什么需要測試框架
1、降低實現門檻。
2、統一技術風格。
3、量化測試成果。
4、底層前端分離。
PPT解讀: 沒有測試框架也可以實現自動化。每個測試人員技術背景不盡相同,擅長的語言、腳本、實施的技術水平參差不齊,沒有框架約束技術實現和風格,他人的維護難度會很大,不利于大家朝同一個技術方向進行分享和交流。 框架本身已經封裝了很多實際需要的接口和工具,測試人員不需要花費大量的精力再度開發,集中精力快速實現測試需求本身。統一的結構不僅多人可以同時維護一個項目,也便于測試結果的分析和匯總,眾多項目的批量運行。框架和項目的分離,使雙方各自影響的范圍得到有效控制,便于項目單點維護和遷移。開發需要框架,同樣測試開發作為一種開發活動也需要框架。
功能測試人員做自動化
1、實踐為主培訓為輔
2、差別化培養
3、測試意識的轉化
4、觸發危機意識
5、考核標準
PPT解讀: 1、開展定期的技術培訓,包括灌輸測試理念,擴展測試思路,培訓新的測試技術。培訓更多的是了解和灌輸理念。重點是實際的動手。培訓只占個人成長的10%,需要制定挑戰性的任務,讓每個人主動亦或是被動的去動手完成,在動手的過程中發現問題解決問題。技術是練出來的,而不是培訓出來的。
2、功能測試人員中個人水平和意愿不盡相同,對有一定技術能力或者有強烈自動化愿望的人重點培訓,開小灶,單獨輔導,讓他們成長的更快一些,對沒有自信或者對自動化產生疑慮的人,起到示范帶頭的效果。
3、功能測試人員需要在日常測試中轉化意識,一個需求過來先考慮如何用自動化實現,當不能實現的時候再考慮手工測試,人們往往按照自己熟悉的方式進行,但是不一定是最好的方式,自動化做的多了,意識轉化的也就越快。 4、測試行業本身的競爭很激烈,需要讓測試人員意識到這一點。 5、放在KPI中進行考核,效果是不容小覷的。
自動化效果體現
1、測試前置效果體現
2、測試范圍效果體現
3、Daily Test 和批量執行效果體現
4、其他指標
PPT解讀: 1、接口和單測可以通過BUG數量進行衡量。這個階段所發現的BUG含金量更高,修復的成本更低,更有價值。此外代碼行數、用例數量、代碼覆蓋率也可以很好的統計測試實際的效果。
2、自動化可以解決以往手工不能進行的測試,比如大數據量、中間件、隨機數據等測試,可以列舉由于引進自動化而增加的各種測試類型。
3、100個用例執行一次體現不了什么,但是100個用例在后續的兩個月里執行了100次,所替代的人工就是很可觀的。自動化項目堅持每日BUILD,一方面可以及時發現問題,維護更新用例。另一個方面每日測試的匯總數據也是自動化測試效果的展示。可以通過郵件、報告進行測試項目和用例的數據匯總,如果達到一定的量級還是很震撼的。
4、自動化還有代碼行數,編譯次數等指標。放在部署有平均部署時間,放在數據有平均一次生成數據量等。前端自動化不宜用BUG數量來衡量,因為主要選取的相對比較穩定的業務線和模塊。
自動化開展的步驟
1、特殊測試需求響應
2、重點業務線全局自動化
3、其他業務線局部自動化
4、流程性約束
5、技術分享和外部推廣
PPT解讀: 自動化的開展需要的有重點、分步驟的進行。既要保證效果,又要體現團隊的技術提升,分成兩條線,各不沖突。
1、對于特殊的測試需求,比如大數據量、中間件、復雜的底層服務和技術接口、高性能組件等對技術能力要求較高的測試需求由專門的自動化組來承擔。一方面集中優勢力量可以快速完成任務,另一方面挑戰性的任務可以實踐和摸索新的測試方法,積累新的技術經驗。
2、重點業務線可以選擇一個,偏中間件和接口,或者功能測試人員尚未覆蓋的業務線,由自動化組承擔。目前的人力來看,可以獨立承擔一個業務模塊全部測試,避免混用投放功能測試人員和自動化測試人員。作為試驗田從代碼編寫到最后的上線,由自動化全覆蓋,進行整體流程的嘗試和布局,方便快速產生短期效果。自動化人員也可以避免不會長期脫離業務線。
3、其他業務線在統一培訓之后,使用框架根據自己的業務特點在局部開展自動化,各自形成獨立的項目。后續會嘗試接入Matrix或者開發自己的平臺和容器,進行整體項目群的維護和管理。隨著自動化覆蓋度的慢慢提升,長期效果將會展現。
4、長期效果的展現的同時需要在測試流程上進行一些制約,比如測試報告上面增加自動化的選項和測試覆蓋,比如開發提測前需要先進行自動化的冒煙測試等,保證自動化長期有效的實施。
5、整個技術團隊有了自動化顯著提升,可以推廣到其他團隊,可以進行跨部門的技術交流。
自動化目前還需要什么樣的條件
1、穩定的測試環境
2、獨立的業務線
3、多樣的技術測試人才
4、團隊共識 PPT解讀: 1、測試環境的穩定是自動化成敗的關鍵。不穩定環境會使效果大打折扣,掩蓋本應該發現的很多功能問題,會使自動化的實施有很強挫敗感。同時本地調試和遠程批量運行,同樣對環境的穩定性有較高的要求。如果有足夠的條件,可以為自動化量身一套環境,測試數據相對獨立,也避免和手工測試互相干擾。
2、專門的自動化測試人員需要擁有獨立的業務線,一方面防止長期脫離業務,閉門造車。另一方面可以在業務線上不受干擾的實施自己的思路。
3、需要更多的測試人才。內部挖潛,從目前來看,難度很大,很多人在技術方面是一張白紙,也無法為技術測試提供更多的支持。如果有社招的機會,選才第一標準還是技術,標準定得高一些,好的技術人才還是非常難得的,相較業務也需要很長的時間才能培養出來。隨著自然的新陳代謝,整個團隊的技術水準也會有所提升。
4、從領導到員工對自動化開展要盡量達成共識,大家有共同的努力方向。一個人的成功不算成功,團隊提升才是最重要的。雖然每個人的水平有高有低,但是本著不拋棄不放棄的原則,希望帶動每個人都有所成長。讓周圍人變的足夠優秀,讓測試快樂起來,才是我們做自動化的真正意義。
本文出自 hanlingzhi 的51Testing軟件測試博客:http://www.51testing.com/?547282
原創作品,轉載時請務必以超鏈接形式標明本文原始出處、作者信息和本聲明,否則將追究法律責任。
posted on 2014-01-16 11:36 順其自然EVO 閱讀(645) 評論(0) 編輯 收藏 所屬分類: selenium and watir webdrivers 自動化測試學習