iT邦幫忙

2

鼠年全馬鐵人挑戰 WEEK 20:APP 自動化測試 - 第一集

              Photo on kobiton.com


前言

在前幾篇的文章內容中,都在介紹 Web 與 API 的自動化測試框架
提到了 Robot Framework, Nightwatch.js, Jest 等

而在這個禮拜開始也終於要進入自動化測試的重頭戲了 "APP 自動化測試框架"
首先要介紹的 App 自動化測試框架是 "Appium"

從以前就很常聽到 Appium 的名號
這次終於可以好好的來了解一下並分享給各位大哥大姐


介紹 Appium

Appium 是一個 Open source 的自動化測試框架 (免錢的喔~)
透過 WebDriver 協議,驅動 iOS, Android 和 Windows
並且是“跨平台”的,能夠使用相同的API針對多個平台進行測試

Appium 可以使用非常多種程式語言 甚至是自動化框架 進行撰寫
Ruby, Python, Java, JavaScript, PHP, C#, RobotFramework 等


安裝 Appium Server

Appium 是使用 Node.js 編寫的
可以從 GitHub clone source code
也可以透過 npm 直接安裝 (小弟決定使用這個方式來進行操作)

安裝 node 與 npm

如果不確定是否已經安裝可以透過查詢版本來確認
$ node -v$ npm -v

如果還沒安裝 Node.js 和 npm
可以到 nodejs.org 官方網站進行安裝

安裝 appium

為了方便使用小弟就先建立一個 appium_demo 的專案資料夾
$ mkdir appium_demo && cd appium_demo

進到 appium_demo 專案後
透過 npm 來新增一個 package.json 的初始文件
$ npm init -y

確認 package.json 建立成功後
就可以下指令來安裝 appium 了
$ npm install --save-dev appium

此時在專案底下會增加 node_modules 和 package-lock.json 的資料夾與檔案

接著,將執行指令添加到 package.json 文件中

{
  "scripts": {
    "appium": "appium"
  }
}

最後,執行 $ npm run appium
Appium 將顯示以下消息確認已經成功安裝

[Appium] Welcome to Appium v1.17.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723

Appium 相關資訊

Appium Client Libraries

在文章的開頭就已經介紹過 Appium 可以使用多種程式語言
在這邊順便附上相對應的網站
因為每一種程式語言都有相對應的 lib
(詳細內容需要等到後續文章做說明)

Appium 應用程式

Appium Server 有一個 GUI 的應用程式
支援各種作業系統(iOS, Windows, Linux)
Appium Desktop App
可以依據自行使用的作業系統來進行安裝


結尾

以上是這週的 Appium 介紹
先行安裝 Appium 以便後續的測試撰寫
了解 Appium 所支援的各種 libraries
看看 Appium 的 GUI 應用程式
沒有意外的話小弟會在下一篇介紹 Appium 的 GUI

如果有疑問或是有錯誤,還請各位大哥大姐提點。
小弟將繼續往下週邁進。 ─=≡Σ((( つ•̀ω•́)つ


參考文件:

Appium: Mobile App Automation Made Awesome.
appium/appium: Automation for iOS, Android, and Windows Apps.


尚未有邦友留言

立即登入留言