Appium Desktop
原滋原味的官方文檔
Appium Desktop是一款用于Mac移稳、Windows和Linux的開源應用,它提供了Appium自動化服務器在一個漂亮靈活的UI中的強大功能会油。它是一些與appium相關的工具的組合:
Appium服務器的圖形界面个粱。您可以設置選項、啟動/停止服務器翻翩、查看日志等…您也不需要使用Node / NPM安裝Appium都许,因為節(jié)點運行時將與Appium桌面綁定。
您可以使用一個檢查器來查看應用程序的元素嫂冻,了解它們的基本信息胶征,并與它們進行基本的交互。這是一種學習Appium的方法桨仿,或者是了解你的應用程序的一種方法睛低,這樣你就可以為它編寫測試了。
下載Appium桌面
你總是可以在GitHub上的發(fā)布頁面上找到最新的Release版本服傍。
如果你在Windows或macOS上钱雷,Appium桌面將自動為你提供最新版本的應用程序。如果你遇到問題更新伴嗡,只需刪除或卸載應用程序急波,并從上面的鏈接重新下載。
注意瘪校,Appium桌面與Appium不一樣。Appium桌面是一個圖形界面名段,使用附加的工具阱扬。Appium桌面是在自己的cadence上發(fā)布的,它有自己的版本控制系統(tǒng)伸辟。如果你報告的是Appium桌面的問題麻惶,一定要包括Appium桌面的版本和使用的Appium服務器的版本(見下文)。
如果你在macOS上信夫,你需要安裝Appium桌面窃蹋,從下載的DMG文件拷貝到你自己的文件系統(tǒng)(最好的地方是“應用程序”文件夾)。在附加的DMG本身上運行Appium不受支持静稻,也不會起作用警没。
已知問題
自動更新不管用?https://github.com/appium/appium-desktop/issues/74)
使用說明
這些說明假定您已經(jīng)熟悉Appium和Appium-related概念。如果您對Appium有新的了解振湾,請訪問appium.io閱讀我們的介紹性材料杀迹。
這款應用提供了一種方便的下載和運行Appium自動化的方法服務器,以及一個檢查你的Android或iOS應用程序的工具押搪。下面幾節(jié)將介紹各種功能树酪。
The server start window
簡單設置
當您打開Appium桌面時浅碾,您會受到服務器啟動窗口的歡迎。在基本選項是啟動一個帶有所有默認值和能力的Appium服務器修改主機和端口续语。開始按鈕也會讓你知道哪個您正在運行的Appium服務器的版本垂谢,這是很有用的向Appium團隊報告問題峰弹。
高級選項
通過點擊“高級”選項卡响牛,你就有能力設置所有的服務器在Appium中可用的標志。這是針對高級用戶的在咨詢了Appium文檔后進行修改呐赡。
Server presets
如果使用高級服務器選項娃豹,則有保存的能力配置供以后使用焚虱。只需在“高級”選項卡上保存預設值,然后你就能回憶起并啟動服務器了從“預置”選項卡中配置懂版。
The server console output window
啟動服務器后鹃栽,它將在您指定的主機和端口上啟動,打開顯示服務器日志輸出的新窗躯畴。
這是相當簡單的民鼓,沒有真正的交互是可能的,超越使用按鈕來停止服務器蓬抄。你也可以復制粘貼這些日志這個窗口在報告Appium問題時很有用丰嘉。另一個按鈕可用:“啟動新會話”。點擊這個將會打開新的會話窗口使您能夠啟動一個檢查會話當前正在運行的服務器嚷缭。
The New Session window
新的會話窗口允許您構建所需的一組Appium用于啟動Appium會話的功能饮亏。你可以發(fā)起一個反對的會議當前運行的Appium桌面服務器(默認),或者您可以啟動一個針對各種其他端點的會話阅爽。
因為不需要運行Appium桌面自己的服務器路幸,您可以得到對于新會話窗口,無需啟動Appium桌面服務器付翁。簡單地去到“文件”(Windows/Linux)或“Appium”(Mac)简肴,選擇“新的會話…””,這將打開新的會話窗口,而不必啟動本地服務器百侧。在這種情況下砰识,附加到本地服務器將被禁用。
Appium Endpoints
以下是針對非本地Appium服務器啟動會話的選項:
自定義主機/端口配置:如果您想要在您的網(wǎng)絡中的另一臺機器上運行一個Appium服務器佣渴,這是非常有用的辫狼。
如果你無法訪問你的機器上的iOS模擬器,你可以利用你的Sauce Labs?帳戶在云端啟動一個Appium會話观话。
TestObject:您也可以使用TestObject這是一個真正的基于設備的檢查員會議的真實設備云予借。
要設置這些選項,應該很簡單。簡單的在輸入字段中輸入您的詳細信息灵迫。
Desired Capabilities
不熟悉所需能力的概念秦叛,或需要的概念您需要具備各種類型的Appium會話的功能應該咨詢應用程序文檔。
Appium桌面并不限制您在任何方面創(chuàng)建所需的功能方法瀑粥,也不會為你驗證它們挣跋。它只是提供了一個很好的UI輸入它們,并保存它們供以后使用狞换。
下的期望“功能”選項卡避咆,您可以使用表單字段和“+”按鈕來輸入多個所需的能力。您還將看到一個表示產(chǎn)生的JSON修噪,實際上是發(fā)送給Appium服務器的查库。
這可以對于驗證您的功能,或者在復制粘貼時有用報告問題黄琼。一旦你設定了你想要的能力樊销,你可能想要保存它們,這樣你就可以了稍后可以運行相同類型的會話脏款。
只需單擊“保存為……””按鈕,給你的能力設置一個名字围苫。您可以在“保存”下訪問它能力設置選項卡,用于后期編輯或會話啟動撤师。設置好服務器類型和功能后剂府,單擊“啟動會話”啟動Appium桌面
Attach to an Existing Session
以下是針對非本地Appium服務器啟動會話的選項:所需的功能是如何配置Appium會話。他們告訴Appium服務器你想要自動化的平臺和應用程序剃盾。如果你是不熟悉所需能力的概念腺占,或需要的概念您需要具備各種類型的
Appium會話的功能應該咨詢應用程序文檔。Appium桌面并不限制您在任何方面創(chuàng)建所需的功能方法痒谴,也不會為你驗證它們湾笛。它只是提供了一個很好的UI輸入它們,并保存它們供以后使用闰歪。下的期望“功能”選項卡,您可以
使用表單字段和“+”按鈕來輸入多個所需的力蓖墅。您還將看到一個表示產(chǎn)生的JSON库倘,實際上是發(fā)送給Appium服務器的。這可以對于驗證您的功能论矾,或者在復制粘貼時有用報告問題教翩。如果你點擊“附加到會話…”選項卡,你可
以選擇一個現(xiàn)有的會話從當前運行的會話列表到您選擇的服務器贪壳,或您可以輸入當前運行會話的會話ID饱亿。會議應該運行在上面的服務器類型部分中指定的服務器細節(jié)。由于檢查器只是一個,所以可能會附加到一個現(xiàn)有會
話Appium客戶機彪笼。如果您想調(diào)試運行中的中間部分钻注,這可能很有用測試。當您退出現(xiàn)有會話的Inspector窗口時配猫,Appium桌面不會像往常一樣退出會話幅恋。
The Inspector
檢查器是應用程序狀態(tài)的可視化表示具有在應用程序中執(zhí)行某些交互的能力Appium。
Appium會話可能需要一些時間來加載泵肄,尤其是在云服務上請耐心等待捆交。當會話加載時,您的應用程序的屏幕截圖就會出現(xiàn)在左邊腐巢∑纷罚可以在應用程序中使用鼠標來處理各種UI元素
看到他們強調(diào)。在檢查器窗口的中間是您的應用程序的層次結構冯丙,表示為XML肉瓦。您可以通過單擊它或單擊來導航此樹屏幕截圖視圖中的元素。然后他們將被強調(diào)银还。當一個元素被突出顯示時风宁,它的信息會出現(xiàn)在細節(jié)視圖中
在檢查員的右邊。這個細節(jié)視圖包括潛力對元素采取的操作蛹疯,以及元素屬性的表戒财。這些屬性在決定元素如何訪問時很有價值使用特定的Appium定位策略。選擇一個元素捺弦,您可以也可以“點擊”元素饮寞,或者“發(fā)送鍵”到元素(如
果它是一個文本字段)。當您使用一個元素執(zhí)行這樣的操作時列吼,檢查器將發(fā)送命令到Appium幽崩,它將執(zhí)行它。如果行動成功寞钥,那就是新的屏幕截圖將生成慌申,您應該看到更新的狀態(tài)和XML你的應用程序,如果它不成功理郑,你將
有機會看到錯誤消息蹄溉。檢查器窗口的頂部包含一個帶有圖標的小工具欄代表在檢查員中采取某些行動的能力:返回(叫“driver.back”)刷新(刷新源和屏幕截圖)*開始錄音(打開錄音機,查看下一節(jié)您炉,以獲得更多關于錄音機的
信息)退出會話(調(diào)用“驅(qū)動程序”)柒爵。退出并關閉檢查器
The Recorder
Appium的桌面有一個非常基本的動作記錄器赚爵,那就是手表使用Appium桌面的操作棉胀,并顯示語言和框架的特定功能表示這些操作的代碼法瑟。然后可以將代碼復制并粘貼到代碼中適當?shù)腁ppium客戶機代碼,并用于測試唁奢。
NB:?記錄器的目標不是產(chǎn)生生產(chǎn)就緒的測試代碼霎挟。它被設計為幫助探索Appium API的工具,并演示了如何實現(xiàn)某些自動化行為對應于特定的方法調(diào)用語言和Appium圖書館驮瞧∶タ福總之,它是一個學習工具论笔,而不是一個健壯
的代碼生成特性采郎,應該這樣使用。當您開始記錄時狂魔,檢查器將顯示一個額外的窗口:
起初蒜埋,記錄器沒有顯示任何代碼。你得先吃點東西動作最楷,比如在等級中找到一個元素整份,然后點擊它,或者發(fā)送擊鍵籽孙。當你這樣做時烈评,代碼會出現(xiàn)在記錄窗口中,與您所選擇的特定語言和框架相對應
可以在記錄的右上角的下拉菜單中調(diào)整:
可以使用適當?shù)陌粹o將此代碼復制到剪貼板在錄音機的右上角犯建。注意讲冠,默認情況下顯示的是簡單的與您所采取的特定動作相對應的代碼行記錄——一般情況下,您不能將這些行粘貼到一個空文本文件中運行代碼适瓦。要在代
碼中運行Appium測試腳本竿开,需要有各種各樣的測試腳本附件(如Appium客戶程序庫)被安裝,這個腳本樣板文件(如實例化一個驅(qū)動程序和初始化會話)是禮物玻熙。要顯示此附加代碼否彩,您可以單擊“show Boilerplate”
按鈕。使用顯示的樣板代碼嗦随,可以復制和粘貼代碼進入一個新的文件并運行它列荔。
隨著我們加入更多的語言,錄音機的力量將繼續(xù)增加枚尼,框架肌毅,以及對Appium桌面的操作。
Conclusion
這是你需要知道的所有你需要知道使用Appium桌面成功!
記住姑原,Appium桌面不是理解Appium的替代品它本身就是一個方便的工具,可以在你的應用程序上使用Appium桌面呜舒,和一個檢查你應用程序的檢查員锭汛。
Reporting Issues and Requesting Features
Appium桌面是開源的,我們使用GitHub來跟蹤問題。請簡單地報告我們的問題跟蹤器)(https://github.com/appium/appium-desktop/issues)唤殴。我們將努力確定您所報告的問題是否與Appium桌面相關
Appium服務器般婆。如果不是與Appium桌面相關,我們會關閉這個問題朵逝,并要求你在(Appium)的main上打開一個通用的Appium問題問題跟蹤器)(https://github.com/appium/appium/issues)蔚袍。請保存
你們自己和我們有寶貴的時間,弄清楚你們的問題體驗與Appium桌面相關配名,或者是一般的Appium問題啤咽。您可以通過查看問題是否與該問題進行重新生成來實現(xiàn)這一點Appium命令行服務器。如果是的話渠脉,直接向Appium
報告問題跟蹤器宇整。有特性請求嗎?遵循相同的流程,向其中提交一個問題適當?shù)淖粉?(如果是特別要求的話芋膘,可以在這里對于Appium桌面鳞青,或者Appium的主要跟蹤程序,如果要求更多一般)为朋。
Advanced Topics and Troubleshooting
Appium can't detect environment variables on Mac
Appium使用“ANDROID_HOME”這樣的環(huán)境變量臂拓,并依賴于此你的“路徑”中的各種二進制文件等等。當從命令行運行時在適當設置這些變量的環(huán)境中习寸,Appium有
把它們撿起來沒有問題胶惰。然而,Appium桌面不會在shell中運行或者命令行環(huán)境融涣,因此默認情況下它無法訪問您在shell啟動腳本或概要文件中設置的環(huán)境變量童番。到我們用這個來解決這個問題
shell-env?包在shell中定義的環(huán)境變量。這個包看起來是肯定的然而威鹿,常見的init腳本剃斧,比如“~ /”。bashrc ','(~ /忽你。bash_profile’,“~ / . zshrc”幼东。如果您以其他方式設置Appium環(huán)
境變量,您需要創(chuàng)建一個默認的init腳本并設置您的環(huán)境嗎還有一些變量科雳,因此Appium桌面將會成功地把它們接起來根蟹。
關于存在于只讀文件系統(tǒng)的警告
這可能意味著您嘗試從下載的磁盤啟動Appium桌面圖像(“。dmg文件)糟秘。這不是運行Appium桌面的支持模式简逮。到正確安裝Appium桌面,將應用程序從磁盤鏡像復制到您的本地文件系統(tǒng)尿赚,
到類似“/應用程序”的地方散庶。然后,運行應用程序從這個新的位置蕉堰。
開發(fā)商指令
想要贊助Appium桌面嗎?太棒了!請到我們的(捐助)那里去關于如何設置開發(fā)環(huán)境的信息(貢獻。md)并提交更改回項目悲龟。