測試人員必看-作好自動化測試的7大技能

隨着敏捷和DevOps等新時代項目開發方法逐漸取代舊的瀑布模型,測試需求在業界不斷增加。測試人員如今正在與開發人員一塊兒工做,自動化測試在許多方面極大地取代了手動測試。自動化測試人員的數量增加,也極大地增長了測試行業的競爭,要想在茫茫測試人員中脫穎而出,首先要掌握如下七大技能。前端

1、 熟練的編程能力

對於一個優秀的測試人員來說,擁有熟練的編程能力是十分必要的,若是沒有熟練的編程能力,就沒法編寫邏輯自動化測試腳本,大大下降了測試的效率。掌握編程方面的背景知識不只能夠簡化自動化腳本,還能夠改善與開發人員的溝通。不只如此,一旦單元測試完成,還能夠參與深刻的功能測試。要具有這種技能,須要作到兩個方面:程序員

(1)學習好設計框架

須要對c#、Python、Java、Perl、SQL、XML以及HTML和CSS有全面的理解和編碼技能。儘管如此,精通哪一種語言取決於開發人員在項目中使用的編程語言web

(2)可以熟練的建立測試腳本

在這個階段,是否應該具備編程知識取決於所使用的自動化框架。若是項目正在使用SpecFlow或Cucumber進行測試自動化,那麼能夠用簡單的英語編寫腳本,而沒必要考慮後端邏輯或編碼。只有對Selenium web驅動程序有足夠的瞭解就足夠了。可是,若是正在使用UFT或QTP,則應該對編程有全面的知識。數據庫

2、具有優秀的手動測試技能

要成爲一名熟練的自動化測試人員,還須要具有敏銳的眼光和手動測試的經驗。請記住如下幾點編程

(1)眼睛有時比機器精確

當某樣東西在測試時看起來有點不對勁時,人眼能夠很容易地檢測出來。使用自動化腳本很難檢測到可視化問題。從用戶的角度查看軟件,能夠幫助測試人員識別UI和可用性測試,以發現bug,這是在自動化腳本中難以編程的特性。c#

(2)人工測試也是必不可少的

自動化測試是一臺機器,機器只作它被要求作的事。複雜的測試須要大量的準備和計劃,也有必定的邊界。而後腳本遵循協議並相應地測試應用程序,特別測試幫助測試人員回答諸如「當我遵循X而不是Y時會發生什麼」之類的問題。它幫助測試人員使用最簡單的方法進行思考和測試,而簡單的方法很難在自動化腳本中編程。即便是可視化的跨瀏覽器測試也須要手工方法。而不是取決於一個自動化的腳本找到視覺差別,你能夠手動檢查的問題經過真正的瀏覽器和設備上的測試。後端

(3)自動化測試可能存在漏洞

自動化腳本就像另外一段代碼。不管多麼優秀的程序員,錯誤老是存在的。在整個測試過程當中進行手動操做,而不是徹底依賴自動化,這將確保在執行腳本以後,測試結果不會出現問題。api

3、須要掌握使用自動化工具的專業知識

在當前時代,行業要求速度和質量,客戶都但願軟件廠商可以在短期內交付高質量的無bug應用程序。這就是自動化測試應用趨勢上升的緣由,每一個廠商都但願自動化測試人員可以具有如下自動化工具的知識和經驗。瀏覽器

1. Selenium

Selenium 多是網頁應用中最流行的開源自動化測試框架,也是其餘開源自動化測試工具好比 Katalon Studio,Watir,Protractor 和 Robot Framework 的核心框架。Selenium 支持多系統環境(Windows,Mac,Linux)以及多種瀏覽器(Chrome,FireFox,IE 以及無頭瀏覽器(沒有界面))。它的腳本能夠由各類各樣的編程語言編寫,好比 Java,Groovy,Python,C#,PHP,Ruby 以及 Perl。安全

2. 自動化測試平臺-優測

優測是騰訊旗下的移動雲測試平臺,擁有50餘名測試領域專家,300餘人專業測試團隊,10餘年終端測試服務經驗,提供兼容性測試、自動化測試、雲真機,設備分享等多種服務方式,不只支持標準能力輸出,也可提供定製化測試解決方案,幫助企業打造完備的DevOps測試體系,以及具備互聯網思惟的質量團隊。

3. UFT

UFT(統一功能測試)是一個知名的功能測試方面的商用測試工具。它爲 API,Web 服務,桌面 GUI 測試,網頁,移動應用等多平臺提供了全面的功能集。這個工具備先進的圖像識別,重用測試組件和自動生成文檔功能。
UFT 使用 VB 腳原本註冊測試過程和對象控制。UFT 被集成到了 Mercury 商業流程測試和 Mercury 質量中心。這個工具也支持經過 CI 集成工具如 Jenkins 來支持 CI。

4. Watir

Watir 是一個基於 Ruby 庫的開源的網頁自動化測試工具。Watir 支持跨瀏覽器測試,包括 Firefox,Opera,無頭瀏覽器和 IE。它一樣支持數據驅動測試和集成 BBD 工具,好比 RSpec,Cucumber 和 Test/Unit。

五、Katalon Studio

Katalon Studio 是一個在網頁應用、移動和網頁服務方面功能強大的自動化測試解決方案。基於 Selenium 和 Appium 框架,Katalon Studio 集成了這些框架在軟件自動化方面的優勢。
這個工具支持不一樣層次的測試技能集。非程序員也能夠快速上手一個自動化測試項目(如使用間諜對象記錄測試腳本),同時也節省了程序員和高級測試人員構建新庫和維護腳本的時間。

4、具有充分理解業務需求

一個熟練的自動化測試人員必須在測試階段開始以前從前端和服務層的全面瞭解應用程序。他們必須知道:
(1)開發團隊使用的編程語言;
(2)由終端用戶運行應用程序的平臺或設備需求;
(3)用於存儲後端信息和用戶數據的數據庫;
(4)鏈接到系統的api或web服務及其使用方式;
(5)一旦應用程序啓動,最終用戶或涉衆所指望的全部特性和功能;
(6)在測試階段開始時是否執行了手工測試,若是有,如何執行?
(7)手動測試人員在測試應用程序時所花費的預期時間;
(8)在上一個版本中是否有任何重要的bug沒有獲得修復,以及它將如何影響業務;
(9)測試階段須要完成的預期交付日期;
(10)瀏覽器差別

5、具有排除自動化工具故障的能力

流行的測試自動化工具很是大且複雜,在你的項目開始使用它們以前,它須要測試人員對工具自己有詳細的技術知識。
在項目中,也可能會遇到這樣的場景:
「腳本在測試結果中顯示了一些錯誤,可是應用程序按照業務需求運行良好。
腳本顯示成功,但應用程序拋出了一些實時錯誤。」
這被稱爲假陰性和假陽性,一般發生在測試人員沒有足夠的知識來配置測試腳本的時候。他們只是繼續使用模板,並指望測試可以成功運行。若是你想成爲一個成功的自動化測試人員,你應該具有配置工具的詳細知識,以及當出現諸如假陽性和假陰性之類的場景時,如何對它們進行故障排除。

6、具有使用測試管理工具的經驗

自動化測試的主要目的是下降整個測試過程的複雜度。若是你是一個自動化測試人員,你應該具有一些測試管理工具的經驗。由於它們是靈活的,容許用戶記錄任何錯誤,並根據錯誤如何影響項目根據優先級對它們進行排序。此外,它的可伸縮性容許團隊成員之間輕鬆地交換信息。擁有一個測試管理工具將確保全部關於測試階段的重要信息都是安全的,而且只容許你的團隊和管理層訪問。

7、瞭解不一樣的開發方法

團隊不只但願測試人員具有測試方面的知識。還須要瞭解不一樣的開發方法是如何工做的。若是項目遵循DevOps或敏捷,不要指望團隊領導告訴你該作什麼。及時交付工做,併爲天天的會議作好準備,以防止涉衆或經理對當前的工做階段提出一些關鍵問題時出現任何尷尬的狀況。瞭解開發方法也將幫助你的職業生涯可以走的更遠。

總結: 這些技能將幫助測試人員在行業中得到很是高的價值。特別是對全部最新的自動化工具以及CI/CD工具(如Jenkins或GitLab)都有適當的瞭解,那麼你不只將成爲團隊中有價值的資源,並且還將成爲行業中有價值的資源。

相關文章
相關標籤/搜索