1.開啓模擬器
2.開始service
3.在IDEA創建maven工程
添加阿里倉庫和java client依賴到pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>AndroidTestB</artifactId>
<version>1.0-SNAPSHOT</version>
<repositories>
<repository>
<id>aliyun-repos</id>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>aliyun-plugin</id>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>7.0.0</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
4 在Test包下創建測試case
5.右鍵 run all test 運行
6.運行結果
-------------------------------------------------------------------------------------------------------
要求設置環形變量
Please set the ANDROID_HOME or ANDROID_SDK_ROOT environment variables to the corect Android SDK root directory path.
C:\Users\Administrator\AppData\Local\Android\Sdk
---------------------------------------------------------------------------------------------------------
獲取控件Id工具
C:\Users\Administrator\AppData\Local\Android\Sdk\tools\bin\uiautomatorviewer
代碼
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Before;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.*;
import java.net.MalformedURLException;
import java.net.URL;
public class TestAndroid {
private AppiumDriver driver;
@BeforeTest
public void setup() throws MalformedURLException {
//設置自動化相關參數
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("platformName", "Android");//設備的系統
capabilities.setCapability("deviceName", "emulator-5554");//設備名稱
capabilities.setCapability("Version", "10.0");//系統版本號
capabilities.setCapability("appPackage", "com.iffy.module_view");//需要啓動的包名
capabilities.setCapability("appActivity", ".MainActivity");//需要啓動的Activity
capabilities.setCapability("unicodeKeyboard", true);//支持中文輸入
capabilities.setCapability("resetKeyboard", true);//支持中文輸入
driver =new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}
@Test
public void myTest() throws InterruptedException {
Thread.sleep(2000);
//允許權限
driver.findElementById("com.android.permissioncontroller:id/permission_allow_button").click();
Thread.sleep(2000);
driver.findElementById("com.iffy.module_view:id/button15").click();
Thread.sleep(2000);
assert driver.findElementById("com.iffy.module_view:id/neirong").getText().equals("第一頁");
}
@AfterTest
public void testend() throws Exception {
driver.quit();
}
}