Appium Android Driver 简单修改

【注】文中提起的 Appium 版本為 v1.6.5

对 Appium Driver 进行简单的修改,并更新方式如下:

  1. 修改 appium-android-driver 中文件,比如去掉对 app 依赖的错误日志
$ vim appium-android-driver/lib/driver.js

具体修改如下:

  diff --git a/lib/driver.js b/lib/driver.js
  index 2e60375..fbe2035 100644
  --- a/lib/driver.js
  +++ b/lib/driver.js
  @@ -444,7 +444,8 @@ class AndroidDriver extends BaseDriver {
  if ((!caps.browserName || !helpers.isChromeBrowser(caps.browserName)) &&
!caps.app && !caps.appPackage) {
let msg = 'The desired capabilities must include either an app, appPackage or browserName';
 -      log.errorAndThrow(msg);
 +      //log.errorAndThrow(msg);
 +      log.warn(msg);
 }
 // warn if the capabilities have both `app` and `browser, although this
 // is common with selenium grid
  1. 编译并安装修改:
 $ npm install
  1. 执行测试即可:
void setupAndroid(String url, String deviceName, String udid, String version, File app, String browserName,
            String packageName, String activity) throws MalformedURLException {
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, version);
        if (StringUtils.isEmpty(deviceName)) {
            deviceName = "Android";
        }
        capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, deviceName);
        // support Chinese
        capabilities.setCapability("unicodeKeyboard", "True");
        capabilities.setCapability("resetKeyboard", "True");
        // support noSign apk
        capabilities.setCapability("noSign", "True");
        if (!StringUtils.isEmpty(udid)) {
            capabilities.setCapability(MobileCapabilityType.UDID, udid);
        }
        if (!StringUtils.isEmpty(packageName) && !StringUtils.isEmpty(activity)) {
            capabilities.setCapability("appPackage", packageName);
            capabilities.setCapability("appActivity", activity);
        } else if (app != null) {
            capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());
        } else if (!StringUtils.isEmpty(browserName)) {
            capabilities.setCapability(MobileCapabilityType.BROWSER_NAME, browserName);
        } else {
            capabilities.setCapability("autoLaunch", false);
        }
        mDriver = new AndroidDriver<MobileElement>(new URL(url), capabilities);
}
setupAndroid("http://127.0.0.1:4492/wd/hub", null, null, null, null, nul, null);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值