原理:
1.appium客户端发送指令到服务端(服务端监听端口)
2.服务端接收到指令转换成设备识别的语言
3.服务端发送到设备执行这些命令
4.设备执行完把结果返回给服务端,服务端再把结果返给客户端
第一个demo
目标:启动AndroidAPP
环境:eclipse +testng+gradle+appium环境安装可参考,但是我用的gradle
语言:Java
利用gradle或maven管理工具,对依赖库下载很是方便。
如果工具都下载好的情况下,对于第一个启动APP的demo,是相当简单的哦
1.打开appium(命令行输入appium即可)
2.Android手机连接电脑,或者开启模拟器
3.打开命令行(提前配置adb环境,加入环境变量中),输入adb devices
image.png
3.创建gradle工程
image.png
4.打开buidle.gradle文件里,配置如下代码即可(这就是引入appium的api)
apply plugin: 'java-library' repositories { jcenter() maven { url "http://repo.maven.apache.org/maven2" } } dependencies { testCompile group: 'io.appium', name: 'java-client', version: '5.0.4' } |
5.创建一个testng类,接下来在类里面加入
AppiumDriver<MobileElement> driver; @BeforeClass public void beforeClass() throws MalformedURLException { //APP本地路径 File app = new File("/Users/wanmei/Downloads/ci/yidianling.apk"); DesiredCapabilities capabilities = new DesiredCapabilities(); // 设备名,利用adb工具可得(adb devices) capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "192.168.56.101:5555"); // APP路径 capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath()); // 设备平台,android capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID); // 初始化 driver = new AppiumDriver<>(new URL("http://0.0.0.0:4723/wd/hub"), capabilities); } @Test public void testAc() { // 等待8秒 try { Thread.sleep(8000); } catch (InterruptedException e) { e.printStackTrace(); } } @AfterClass public void afterClass() { // 关闭APP driver.quit(); } |
6.运行此testng类,APP启动8秒后,关闭。