主流測試框架介紹

本篇主要參考 Essential Skills for Landing a Test Automation Job in 2018 內容整理而成。

Test Automation Engineers (測試自動化工程師) 在業界的需求有不斷持續的增加的趨勢,從去年 34% 已成長到 40%

這張統計圖列出前七大測試框架,其中最突出的莫過於Selenium

當然,測試框架流行與否,也和程式語言使用習慣有關,在這次調查的國家中 Java 是最多人使用的程式語言,其次為Javascrit、C#以及Python。

1.Selenium

Selenium 是目前 test automation 領域最頂尖的框架,在去年統計成長幅度由29%成長至36%,代表他是成為test automation 工程師必學的項目。 更詳細介紹可以參考這裡

Selenium WebDriver API 支援 Java、C#、Ruby、Python 及 Perl 等多種語言

2.QTP/UFT

QTP/UFT 是商業化測試框架 UFT 可以同時在多台機器,移動設備和伺服器(實體和虛擬)上運行分佈式測試多個分佈式測試。

HPE Unified Functional Testing (UFT) 軟體,以前稱 HP QuickTest Professional (QTP)

3.TestNG

TestNG

JAVA、Eclipse

4.JUnit

JUnit

Java

5.Appium

Appium 是一個開源的測試框架,支援網頁、APP(原生或Hybrid) Appium 不再是移動裝置的主打項目,至去年從 8% 下降到只剩4%,下降的原因可能和他最後釋出版本的穩定度不夠,或者跟移動測試框架越來越多有關。

可以參考這裡這裡

6.Cucumber

Cucumber 建立了非常受歡迎的 BDD(行為驅動開發- Behaviour Driven Development) test automation 框架

支援相當多語言

其中Cucumber.js可以搭配nodejs在多種瀏覽器中測試,可以參考這裡

7.Microsoft Automation Tool

Microsoft Automation Tool

不同國家測試框架偏好

框架的選擇,跟程式語言的偏好及使用習慣有關, 接下來我們來看一下各區域的測試自動化框架偏好

美國

Selenium、QTP/UFT、MS Automation Tool、JUnit

美國以 Selenium 為主,此外由於C#是美國第二大流行語法,因此是各國之中,唯一有使用 Microsoft’s automation tools 的框架

歐洲

Selenium、Cucumber、JUnit、TestNG、Appium

中國

Selenium、QTP/UTF、Robot、JUnit、Appium

印度

QTP/UTF、Selenium、TestNG、JUnit、Selenium

俄國

Selenium、Appium、Junit、Cucumber、TestNG

其他

每四位參與問券統計的人,就有一位表示,希望可以擁有 Jenkins 的測試驅動開發(Test-driven development,TDD)經驗,這非常有趣,因為Jenkins 是一個 CI 框架而不是測試自動化工具,在一開始就要先完成測試框架,當專案開始進行時,由JenKins來定期執行單元測試及整合,也可把UI測試整合到JenKins來執行。可以想像在業界中,Jenkin跟測試自動化這兩個領域其實是有非常緊密的關聯性。