Appium -GitHub

Appium

Appium是一個(gè)開(kāi)源的、跨平臺(tái)的測(cè)試自動(dòng)化工具,用于本地、混合和移動(dòng)web和桌面應(yīng)用程序,在模擬器(iOS)、仿真器(Android)和真實(shí)設(shè)備(iOS、Android、Windows、Mac)上進(jìn)行測(cè)試。

Supported Platforms

iOS

Android

Windows

Mac

請(qǐng)參閱平臺(tái)支持doc以獲得更詳細(xì)的信息。


Why Appium?

1、由于在所有平臺(tái)上使用標(biāo)準(zhǔn)的自動(dòng)化api,您不必重新編譯應(yīng)用程序或以任何方式修改它。

2、您可以使用您喜歡的開(kāi)發(fā)工具編寫(xiě)測(cè)試,使用任何與WebDriver兼容的語(yǔ)言,如Java、objective - c、JavaScript和Node.js(in?promise, callbackorgeneratorflavors)、PHP、Python、Ruby、c#、Clojure或Perl中使用Selenium WebDriver API和特定于語(yǔ)言的客戶程序庫(kù)。

3、您可以使用任何測(cè)試框架。

在WebDriver協(xié)議上投資意味著你在一個(gè)單一的、免費(fèi)的、開(kāi)放的測(cè)試中打賭,這已經(jīng)成為一個(gè)事實(shí)上的標(biāo)準(zhǔn)。不要把自己鎖在一個(gè)專(zhuān)有的堆棧里。

如果你使用蘋(píng)果的ui自動(dòng)化庫(kù),而不使用Appium,你只能使用JavaScript編寫(xiě)測(cè)試用例,而且只能通過(guò)工具應(yīng)用程序運(yùn)行測(cè)試。同樣,使用谷歌的UiAutomator,您只能在Java中編寫(xiě)測(cè)試用例。Appium打開(kāi)了真正跨平臺(tái)的本地移動(dòng)自動(dòng)化的可能性。

我還沒(méi)明白…

如果你是Appium小白,或者想要更詳細(xì)地描述這一切,請(qǐng)閱讀我們的Appium概念介紹

需求(Requirements)

您的環(huán)境需要為您想要運(yùn)行測(cè)試的特定移動(dòng)平臺(tái)設(shè)置。具體的平臺(tái)需求見(jiàn)下文。

如果您想通過(guò)npm安裝運(yùn)行Appium,對(duì)Appium進(jìn)行hack或貢獻(xiàn),您將需要node.js和npm 4或更高的版本(使用n或brew安裝節(jié)點(diǎn)來(lái)安裝node . js)。確保你沒(méi)有安裝有sudo的節(jié)點(diǎn)或Appium,否則你會(huì)遇到問(wèn)題。我們推薦最新的穩(wěn)定版本。

為了驗(yàn)證Appium的所有依賴(lài)項(xiàng)是否滿足,您可以使用appium-doctor命令行。使用命令行安裝npm install- g appium-doctor(或從源代碼運(yùn)行它),然后運(yùn)行appium-doctor,并提供——ios或——android標(biāo)志,以驗(yàn)證所有的依賴(lài)項(xiàng)都是正確設(shè)置的。

您還需要下載您的語(yǔ)言的Appium客戶端,這樣您就可以編寫(xiě)測(cè)試。Appium客戶端是對(duì)WebDriver客戶端的簡(jiǎn)單擴(kuò)展。您可以在Appium客戶端列表中看到客戶端和鏈接的下載說(shuō)明。


iOS Requirements

1、Mac OS X 10.10 or higher, 10.11.1 recommended

2、XCode >= 6.0, 7.1.1 recommended

3、Apple Developer Tools (iPhone simulator SDK, command line tools)

4、確保您閱讀了我們的關(guān)于為iOS測(cè)試設(shè)置您自己的文檔!

Android Requirements

1、Android SDKAPI >= 17 (Additional features require 18/19)

2、Appium在OS X、Linux和Windows上支持Android。確保你遵循了在不同的OSes中正確設(shè)置你的環(huán)境的變量:

linux

osx

windows

Windows Requirements

1、Windows 10

2、文檔

Mac Requirements

1、Mac OS X 10.7 +

2、Documentation

Quick Start

啟動(dòng)一個(gè)Appium服務(wù)器,然后運(yùn)行你最喜歡的webdriver兼容語(yǔ)言的測(cè)試!您可以使用node.js或使用該應(yīng)用程序開(kāi)啟一個(gè)Appium服務(wù)器,見(jiàn)下文。

(通過(guò)使用node.js開(kāi)啟一個(gè)Appium服務(wù))Using Node.js

$ npm install -g appium(這里有一個(gè)巨坑,npm版本如果是最新(5.3.0)的則無(wú)法安裝,會(huì)一直報(bào)錯(cuò),所以需要給npm降低版本:npm install npm@4 -g,如果這一步出錯(cuò),那就需要先清除npm緩存:npm cache clean 如果這一步出錯(cuò),那就試試:npm cache verify。然后再降低版本


$ appium

如前所述,您可能想要運(yùn)行命令行:appium-doctor,以確保您的系統(tǒng)正確設(shè)置:

$ npm install -g appium-doctor

$ appium-doctor(執(zhí)行這個(gè)命令和點(diǎn)擊圖形化界面上的“聽(tīng)診器”圖標(biāo)(如下圖:)檢測(cè)是一致的,效果如圖:)

圖形化界面點(diǎn)擊“聽(tīng)診器”圖標(biāo)驗(yàn)證安裝是否成功


驗(yàn)證appium配置成功的界面


通過(guò)使用Appium Desktop應(yīng)用程序開(kāi)啟一個(gè)Appium服務(wù)

1、首先需要下載Appium Desktop:Download the Appium app

2、Run it!


編寫(xiě)Appium測(cè)試用例

開(kāi)始編寫(xiě)和運(yùn)行測(cè)試用例的主要指南是the running tests doc,其中包括對(duì)iOS、Android和Android舊設(shè)備的解釋。如果您對(duì)物理硬件測(cè)試感興趣,您可能會(huì)對(duì)我們的真機(jī)測(cè)試感興趣。

(注意:如果你在自動(dòng)操作ios10 +,一定要看看我們的XCUITest遷移指南,因?yàn)樘O(píng)果的自動(dòng)化支持自ios10以來(lái)已經(jīng)發(fā)生了顯著的變化,在Appium中發(fā)生了相應(yīng)的變化)。

從本質(zhì)上講,我們支持一個(gè)子集的WebDriver JSON線路協(xié)議(Selenium WebDriver JSON Wire Protocol),并擴(kuò)展它,這樣您就可以指定移動(dòng)目標(biāo)desired capabilities這個(gè)很重要,需要的測(cè)試參數(shù)格式)通過(guò)Appium運(yùn)行您的測(cè)試。

您可以使用WebDriver的元素查找策略的一個(gè)子集來(lái)查找元素。有關(guān)詳細(xì)信息,請(qǐng)參閱查找元素。對(duì)于像點(diǎn)擊、晃動(dòng)和滑動(dòng)這樣的自動(dòng)移動(dòng)手勢(shì),我們也有幾個(gè)擴(kuò)展到JSON Wire協(xié)議。

您還可以在混合應(yīng)用程序中自動(dòng)化web視圖!參見(jiàn)混合應(yīng)用指南

這個(gè)存儲(chǔ)庫(kù)包含許多不同語(yǔ)言的測(cè)試示例!

對(duì)于完整的Appium文檔頁(yè)面列表,請(qǐng)?jiān)L問(wèn)此目錄


Appium是如何工作的(How It Works)

Appium驅(qū)動(dòng)各種本機(jī)自動(dòng)化框架,并提供基于Selenium的WebDriver JSON線路協(xié)議的API

對(duì)于新的iOS版本(9.3和up),Appium驅(qū)動(dòng)著蘋(píng)果的XCUITest庫(kù)。我們對(duì)XCUITest的支持使用了Facebook的WebDriverAgent項(xiàng)目。

對(duì)于舊的iOS版本(9.3和以下),Appium驅(qū)動(dòng)蘋(píng)果的UIAutomation庫(kù),使用基于Dan Cuellar在iOS Auto上的工作的策略。

Android支持使用新的平臺(tái)的UiAutomator框架和較老的Android平臺(tái)的Selendroid

Windows支持使用了微軟的WinAppDriver

(Contributing)

請(qǐng)查看我們的貢獻(xiàn)文檔,了解如何從源代碼構(gòu)建、測(cè)試和運(yùn)行Appium。

路線圖(Roadmap)

對(duì)未來(lái)的Appium有興趣?看看路線圖

原文出處:Appium

補(bǔ)充:

解釋?zhuān)?、安裝node,主要是因?yàn)榘惭b了node以后就會(huì)自帶npm,有了npm以后才能繼續(xù)安裝appium;2、安裝appium;3、不知道干啥用,我沒(méi)用到;4、啟動(dòng)appium服務(wù)

注意:Make sure you have not installed Node or Appium with sudo, otherwise you'll run into problems。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,362評(píng)論 6 544
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,577評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 178,486評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,852評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,600評(píng)論 6 412
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,944評(píng)論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,944評(píng)論 3 447
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 43,108評(píng)論 0 290
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,652評(píng)論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,385評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,616評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,111評(píng)論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,798評(píng)論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 35,205評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 36,537評(píng)論 1 295
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,334評(píng)論 3 400
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,570評(píng)論 2 379

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,745評(píng)論 25 708
  • Appium和它的設(shè)計(jì)思想 什么是Appium? 1、appium是開(kāi)源的移動(dòng)端自動(dòng)化測(cè)試框架; 2、appium...
    RmondJone閱讀 4,482評(píng)論 2 7
  • Appium學(xué)習(xí)之路—環(huán)境搭建 說(shuō)實(shí)話,Appium第一次接觸還是在testerhome看到的,介紹說(shuō)這個(gè)框架可以...
    點(diǎn)點(diǎn)寒彬閱讀 10,014評(píng)論 10 34
  • 1.什么是Appium? Appium 是一個(gè)開(kāi)源、跨平臺(tái)的自動(dòng)化測(cè)試工具,用于測(cè)試原生和輕量移動(dòng)應(yīng)用,支持 iO...
    六六_fiona閱讀 1,713評(píng)論 0 5
  • 互聯(lián)網(wǎng)營(yíng)銷(xiāo)在許多情況下,不僅僅是為了銷(xiāo)售,而是為了打造品牌影響力! 思維決定成敗,要成為一名互聯(lián)網(wǎng)營(yíng)銷(xiāo)人才,必須具...
    言射手閱讀 374評(píng)論 0 4