1. 程式人生 > >Appium自動化測試-同時執行多個裝置

Appium自動化測試-同時執行多個裝置

在之前的文章中,學習了Appium的基本使用,可以參考Appium自動化測試-入門,我們接著學習一下在一臺電腦中同時執行多裝置的方法,這樣在測試多種裝置的時候,可以直接在本地完成。

一、啟動Appium

一個Appium伺服器只能連線一個測試裝置進行測試,如果要在一臺電腦上同時測試多個裝置,解決方法是在電腦上啟動多個Appium伺服器,每個伺服器連線不同的裝置。我們要設定的就是要指定Appium伺服器的監聽埠。可以使用命令列來啟動,也可以使用Appium的介面來啟動,這裡介紹一下介面的啟動方式。命令列啟動時需要我們安裝Node.js來啟動,在有專用的測試伺服器時,命令列啟動的方式會更便捷。

首先,我們需要指定device name,如下圖所示:

Appium設定device name

接著,我們需要指定伺服器的地址和埠,地址就指定本機IP地址即可,埠要設定為不一樣的,注意有的埠可能被佔用的問題:

埠

二、連線到Appium

這裡用到的是RobotFramework指定關鍵字來連線Appium做一個示例,

${capability}  Create Dictionary   automationName=selendroid   platformVersion=6.0.1   platformName=Android    deviceName=8c28b78c udid=8c28b78c

Open
Browser https://www.baidu.com/ browser=chrome remote_url=http://localhost:4727/wd/hub desired_capabilities=${capability}

上面是第一個指令碼檔案中的配置,簡單的分析一些它做了什麼:
首先是指定了Desired Capabilities,其中最重要的是指定了udid=8c28b78c,和不同的remote_url,這樣才能正確的連線到我們要連線的裝置。否則,只指定device name的情況下,Appium會預設連線到第一個裝置上。以下是第二個配置檔案:

${
capability} Create Dictionary automationName=selendroid platformVersion=7.0 platformName=Android deviceName=TWGDU16513029045 udid=TWGDU16513029045 Open Browser https://www.baidu.com/ browser=chrome remote_url=http://localhost:4723/wd/hub desired_capabilities=${capability}

和上一個指令碼一樣,我們指定了不同的udid和remote_url,用Open Browser方法來打開了Chrome瀏覽器。通過指定不同的資訊,我們可以連線到不同的Appium伺服器上。這樣,就可以做到在一臺電腦上,同時執行多個裝置。

關於RobotFramework的使用,會再寫一篇文章做一下簡單的介紹:)