Appium學習15:Capability配置簡介

什麼是Capability

desired capability的功能是配置Appium會話。他們告訴Appium服務器您想要自動化的平臺和應用程序。

Desired Capabilities是一組設置的鍵值對的集合,其中鍵對應設置的名稱,而值對應設置的值。(如:"platformName": "Android")Desired Capabilities主要用於通知Appium服務器建立需要的Session。

Session

Appium的客戶端和服務端之間進行通信都必須在一個Session的上下文中進行。客戶端在發起通信的時候首先會發送一個叫作“Desired Capabilities”的JSON對象給服務器。服務器收到該數據後,會創建一個session並將session的ID返回到客戶端。之後客戶端可以用該session的ID發送後續的命令。

常用Capability配置講解

Capability官方完整文檔

如果有了解過Capability的人會發現一個問題,其實他主要分成了三部分:公共部分、ios部分、android部分,如果你android想用ios的那是不可能的,so,老老實實去了解每個平臺有哪些,他們的作用是什麼。下面我們介紹一些公用常用的,紅色標記的爲常用的選項。

公用Capability

 

Android獨有Capability

 

ios獨有Capability

 

 

 

Capability啓動App演示

New Session Window 會話建立

  • Automatic Server 本地AppiumServer服務
  • Custom Server:例如,如果要針對運行在網絡中另一臺計算機上的Appium服務器啓動Inspector會話,這很有用。
  • Sauce Labs:如果您無法訪問機器上的iOS模擬器,則可以利用Sauce Labs帳戶在雲中啓動Appium會話。
  • TestObject:您還可以利用TestObject的真實設備雲來進行真機測試。
  • headspin:  使用遠程設備來創建會話。

desired capability參數Josn

{
  "platformName": "Android",
  "platformVersion": "5.1.1",
  "deviceName": "127.0.0.1:21513",
  "appPackage": "com.tal.kaoyan",
  "appActivity": "com.tal.kaoyan.ui.activity.SplashActivity",
  "noReset": true
}

新的會話窗口允許您構造一組desired capabilities,用於啓動Appium會話。您可以針對當前運行的Appium Desktop服務器(默認的)啓動一個會話,或者您可以針對各種其他端點啓動一個會話。

因爲不需要使用Appium Desktop自己的服務器,您可以在不啓動Appium Desktop服務器的情況下進入新的會話窗口。只需點擊“File”(Windows / Linux)或“Appium”(Mac),然後選擇“New Session…”,它將打開新的會話窗口,而不必啓動本地服務器。在這種情況下,將禁用附加到本地服務器。

Inspector元素獲取

啓動成功之後就可以使用 Inspector來進行元素空間獲取了。 注意:默認的元素定位有一些不準,需要切換到第二個座標點定位選項後再切換回來才能準確定位。 

 

遇到的問題

一開始裝的Appium版本是1.16.0,Appium-desktop的版本是1.15.1,運行報錯,各種缺失不能運行。

在cmd下使用cnpm install [email protected] -g  重新安裝了1.8.0版本的appium

卸載了最新的Appium-desktop,安裝了老版本1.5.0

再次運行按上面的設置運行考研幫app,成功!

猜測可能的問題要麼是appium和appium-desktop的版本不兼容的問題,要麼是新版本還需要其他一些配置的問題,暫時先按下不表以後再試驗。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章