51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 1896|回复: 1
打印 上一主题 下一主题

[Appium] 【转贴】appium简明教程 6 – 启动appium及android模拟器

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-7-12 13:12:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一般情况下,我们都从命令行启动appium。
windows下,dos命令窗口输入
appium
如果该命令报错,那么请重装appium
npm install -g appium
如果安装出错,请自行更换npm源。
npm -g --registry http://registry.cnpmjs.org  install appium
然后请打开android的模拟器,如果没有请新建一个虚拟设备。请自行解除设备锁定(手动把屏幕解锁了),以防万一。
下面的代码以启动android原生的计算器程序为例
ruby篇
CODE:
1 require 'appium_lib'
2
3 caps   = { caps:       { platformName: 'Android', appActivity: '.Calculator', appPackage: 'com.android.calculator2' },
4           appium_lib: { sauce_username: nil, sauce_access_key: nil } }
5 driver = Appium:river.new(caps).start_driver
讨论:可以看出ruby lib里面的Appium:river类实际上就是原生的webdriver类的子类,当然了,由于ruby语法灵活,也可以使用monkey patch来实现类似功能。
python篇
CODE:
1 from appium import webdriver
2 desired_caps = {}
3 desired_caps['platformName'] = 'Android'
4 desired_caps['platformVersion'] = '4.2'
5 desired_caps['deviceName'] = 'Android Emulator'
6 desired_caps['appPackage'] = 'com.android.calculator2'
7 desired_caps['appActivity'] = '.Calculator'
8  
9 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
讨论:webdriver.Remote实际上就是原生webdriver的子类,另外Remote()构造函数的第一个参数中需要显示指定appium server监听的端口
java篇
新建java项目时候,请注意将selenium-webdriver以及appium client的jar包导入
CODE:
1 import io.appium.java_client.AppiumDriver;
2 import org.openqa.selenium.By;
3 import org.openqa.selenium.WebElement;
4 import org.openqa.selenium.remote.CapabilityType;
5 import org.openqa.selenium.remote.DesiredCapabilities;
6
7 DesiredCapabilities capabilities = new DesiredCapabilities();
8 capabilities.setCapability(CapabilityType.BROWSER_NAME, "");//这句不是必须的
9 capabilities.setCapability("deviceName","Android Emulator");
10 capabilities.setCapability("platformVersion", "4.4");
11 capabilities.setCapability("platformName","Android");
12 capabilities.setCapability("appPackage", "com.android.calculator2");
13 capabilities.setCapability("appActivity", ".Calculator");
14
15 AppiumDriver driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
讨论:AppiumDrvier是原生webdriver的子类。
在这里我们可以看到,新建driver的时候必须要指定一个**DesiredCapabilities**对象,该对象究竟是何方神圣,我们下一节会仔细讲解。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1
回复

使用道具 举报

该用户从未签到

2#
发表于 2017-7-12 17:19:02 | 只看该作者
挺好的,不用自己胡乱找了
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-8 05:33 , Processed in 0.064353 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表