第一個腳本實例(appium java)
關鍵字:TestNg ,maven,pom.xml,appium
遇到的問題:編輯pom.xml進行引入jar包依賴時,selenium java和java client都要選擇LATEST版本,TestNG版本可選擇6.9.4
===================================================
預置環境:已裝好Eclipse + maven + appium
1.安裝TestNg插件:啟動eclipse->點擊“help”菜單->選擇“install new software”選項->在install選項界面點擊“add”按鈕->在AddRepository彈出框的Name輸入框自定義輸入TestNg,在Location輸入框輸入“http://beust.com/eclipse"內容后點擊ok按鈕->點擊當前頁面Name為“TestNG"的復選框打上勾,點擊“Next"按鈕一直next下去,中途遇到彈出框SoftwareUpdate選擇“Yes"按鈕,安裝完成后會重慶eclipse.
驗證是否安裝完成:點擊eclipse菜單“windows"選擇“show view"查看是否有Java-TestNG選項
2.新建Maven項目并引入jar依賴包:
a.打開eclipse,新建一個Java項目,
b.選中項目右鍵Configure->Convert to MavenPRoject"選項轉化為maven項目
c. 修改pom.xml文件,添加appium client,selenium,testng的jar依賴包
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>LATEST</version>
</dependency>
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>LATEST</version>
</dependency>
</dependencies>
3.編輯第一個demo測試用例腳本: 以在手機端安裝并打開東方財富app為例字
a.maven項目中新建apps文件夾,講測試用的app存放到該文件夾下面
b.新建testNg類后在類中編輯以下代碼:
privateAndroidDriver driver;
//初始化參數,安裝apk
@BeforeClass
public void setUp() throws Exception {
// 設置啟動的程序位置和程序的名字,安裝的apk文件
File classpathRoot = new File(System.getProperty("user.dir"));
File appDir = new File(classpathRoot, "./apps");
File app = new File(appDir, "dfcft_web.apk"); //例如apkName.apk
// 設置設備的屬性
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
// 設置平臺 Android
capabilities.setCapability("platformName","Android");
// 設置設備的名稱,真機或者模擬器的, 設備連接電腦,在命令行輸入adb devices 查看即可
capabilities.setCapability("deviceName", "UDID號");
// 設置Android系統的版本號,例如 4.3 4.4
capabilities.setCapability("platformVersion","4.4");
// 設置apk文件的路徑
capabilities.setCapability("app", app.getAbsolutePath());
// 設置apk的包名
capabilities.setCapability("appPackage", "com.eastmoney.android.berlin");
// 設置main Activity,例如 .mainNmae.activity 記得帶上點
capabilities.setCapability("appActivity","com.eastmoney.android.berlin.activity.MainActivity");
//waitActivity ,如果啟動成功,沒有影響,可以不填寫
//capabilities.setCapability("appWaitActivity", "");
// 設置UNicode鍵盤支持中文輸入,會默認的代替內置的鍵盤
capabilities.setCapability("unicodeKeyboard","True");
capabilities.setCapability("resetKeyboard", "True");
try {
// 加載驅動,ip,填寫相應的ip和端口 例如 http://172.16.11.120:4720
driver = new AndroidDriver(newURL("http://127.0.0.1:4723/wd/hub"), capabilities);
Thread.sleep(5000);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//啟動成功后,會自動的安裝apk,這個斷言判斷apk是否安裝成功,修改包名為實際值
@Test
public void Test(){
//輸出判斷結果
System.out.println("Result:"+driver.isAppInstalled("com.eastmoney.android.berlin"));
//判斷是否安裝成功
Assert.assertEquals(driver.isAppInstalled("com.eastmoney.android.berlin"),true, "安裝失敗");
}
//測試完成后,退出driver
@AfterClass
public void tearDown() throws Exception {
Thread.sleep(10000);
try{
driver.quit();
}catch(Exception e){
e.printStackTrace();
}
}
c.手機連上電腦,在cmd窗口輸入adb devices查看是否有手機udid號
d. 打開appium客戶端,啟動appium服務
e.打開eclipse運行代碼程序,查看用例結果
新聞熱點
疑難解答