Appium Android Driver 简单修改
【注】文中提起的 Appium 版本為 v1.6.5
对 Appium Driver 进行简单的修改,并更新方式如下:
- 修改 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
- 编译并安装修改:
$ npm install
- 执行测试即可:
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);
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Base封装(一)--我的最简MVP架构
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/73471270 绪论 最近懒癌症犯了,好久都没写博客了,当然也在做一些东西,也在整理自己一直以来使用的一些技术点,从Retrofit到OkGO,从ListView到RecycleView,从Java到Kotlin….总之一直在尝试新的技术,今天分享一下自己一直所用的MVP,整理完了分享给大家,有不合适或者不正确的地方还希望大家多多指正,共同交流。 对了 打一波广告 我的新的个人博客 http://hankkin.cn/ 好了接下来开始我们的MVP 背景 众所周知 MVP这种架构模式已经出现很久了,大体时间应该是2014年吧,现在网上的关于MVP的文章也很多,各式各样的关于MVP的架构知识都涌现出来,可想而知现在这种架构有多么火,还有目前风头正劲的MVVM,当然我并不觉得我现在写MVP有些晚,因为每个人都有每个人的架构,每个人都可以根据自己的逻辑封装出来自己的架构模式,今天我介绍的便是我自己通过项目总结出来的MVP 什么是MVP MVP知识点 MVP ...
- 下一篇
手把手教学 Android用jsoup解析html
1.jsoup介绍,文档http://www.open-open.com/jsoup/ 很多时候,我们需要从各种网页上面抓取数据,而jsoup是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 jsoup官方文档:https://jsoup.org/cookbook/中文文档:http://www.open-open.com/jsoup/ 2.使用场景 下面是一张关于美食的截图,可以留意到这是一个html网页,当我们想要抓取里面的数据的时候,jsoup就能帮到我们很多。 Paste_Image.png 接下来开始手把手教学 首先,也是很重要的一步,就是下载jar包,丢到libs里面 jar包下载地址:http://jsoup.org/download Android studio玩家可以不下载jar包,在Gradle里面加入 dependencies { compile 'org.jsoup:jsoup:1.9.2' } 然后,找到你心仪的网页去抓取数据 这里...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 设置Eclipse缩进为4个空格,增强代码规范
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS8安装Docker,最新的服务器搭配容器使用
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7安装Docker,走上虚拟化容器引擎之路