對java熟悉一些,所以想用java把appium給做起來。今天用myeclipse給環境和Demo弄了一下,網上沒有一篇全套資料的。
各塊環境的搭建:
1、安裝appium客戶端,省略下載和安裝步驟

2、在myeclipse中新建一個java project,省略步驟,我的結構是這樣的

3、在java project中新建libs和apps的目錄,用於存放第三方jar包和apk包
java-client-4.1.2.jar
鏈接:http://pan.baidu.com/s/1hse8yaw 密碼:kijn
selenium-java-2.48.0.jar
鏈接:http://pan.baidu.com/s/1hrAgpmc 密碼:f55p
selenium-server-standalone-2.48.0.jar
鏈接:http://pan.baidu.com/s/1gfhsqhd 密碼:sma8
4、創建junit test cast:點擊項目src-new-other-java-JUnit-JUnit test cast
然后調用普通java中的測試用例
我的測試用例:也就是連接appium-啟動應用-關閉appium連接
1 package pc.driver.com.cn; 2 3 import io.appium.java_client.android.AndroidDriver; 4 import java.io.File; 5 import java.net.MalformedURLException; 6 import java.net.URL; 7 8 9 import org.openqa.selenium.By; 10 import org.openqa.selenium.WebElement; 11 import org.openqa.selenium.remote.CapabilityType; 12 import org.openqa.selenium.remote.DesiredCapabilities; 13 14 public class AndroidTestDemo { 15 private AndroidDriver<WebElement> driver; 16 public void setUp(){ 17 //設置apk的路徑 18 File clasPathRoot = new File(System.getProperty("user.dir")); 19 File appDir = new File(clasPathRoot,"apps"); 20 File app = new File(appDir,"modeng.apk"); 21 //設置自動化相關參數 22 DesiredCapabilities capabilities = new DesiredCapabilities(); 23 capabilities.setCapability("deviceName", "Android Emulator"); 24 capabilities.setCapability(CapabilityType.BROWSER_NAME,""); 25 //設置安卓系統版本和平台 26 capabilities.setCapability("platformVersion", "4.4"); 27 capabilities.setCapability("platformName", "Android"); 28 //設置apk路徑 29 capabilities.setCapability("app", app.getAbsolutePath()); 30 //設置app的主包名和主類名 31 capabilities.setCapability("appPackage", "cn.com.pclady.modern"); 32 capabilities.setCapability("appActivity", "cn.com.pclady.modern.module.launcher.SplashActivity"); 33 34 //初始化 35 try { 36 driver =new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"),capabilities); 37 Thread.sleep(10000); 38 //driver.findElement(By.id("com.android.packageinstaller:id/ok_button")).click(); 39 Thread.sleep(10000); 40 driver.quit(); 41 } catch (MalformedURLException e) { 42 e.printStackTrace(); 43 } catch (InterruptedException e) { 44 e.printStackTrace(); 45 } 46 } 47 48 49 50 }
這里要注意,如果find方法找元素無法找到,會報錯,junit會報錯
5、運行的時候,必是運行junit程序,

記得一定要關appium不然,再運行,會報無法創建新的session
如果成功:

然后完成后,再進入Console控制台打印我的日志輸出。
OK了,一個簡單的demo就可以了,但是如果要想用好appium,那它的api必須得熟悉如何調用才可以。再繼續研究吧
