前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java自动化测试(Hybrid应用自动化 35)

Java自动化测试(Hybrid应用自动化 35)

作者头像
zx钟
发布2020-11-02 10:45:50
7090
发布2020-11-02 10:45:50
举报
文章被收录于专栏:测试游记

准备工作

  • 准备android4.4+版本以上的手机/模拟器
  • 在app源码中将webview调试模式打开
代码语言:javascript
复制
webview.setWebContentsDebuggingEnabled(true);
  • 安装UC开发者工具

查看ChromeDriver版本

进入设置->应用,点击显示系统进程

显示系统进程

找到Android System WebView,它的版本也就是75.0.3770.143

Android System WebView

在chromedriver中找到对应的版本 https://npm.taobao.org/mirrors/chromedriver/?utm_source=testingpai.com

使用UC 开发者调试工具定位页面

https://dev.ucweb.com/docs/pwa/docs-zh/xy3whu

修改设置

设置

查看当前页面

查看Home

进入网页

代码语言:javascript
复制
@Test
public void test() {
    androidDriver.findElement(MobileBy.xpath("//*[@text='柠檬社区']")).click();
    System.out.println(androidDriver.getContextHandles());//[NATIVE_APP, WEBVIEW_com.lemon.lemonban]
    //切换到WEBVIEW_com.lemon.lemonban
    androidDriver.context("WEBVIEW_com.lemon.lemonban");
    //进入web页面点击注册按钮
    androidDriver.findElement(MobileBy.xpath("//span[contains(text(),'注册')]")).click();
}

微信小程序

由于腾讯系QQ/微信是基于腾讯自研的X5内核,不是谷歌原生webview,所以调试会有差异

微信小程序只能够支持手机,模拟器是不行的。

Step1:打开微信小程序webview开关

https://debugx5.qq.com/ http://debugmm.qq.com/?forcex5=true

Step2:UC开发者工具识别小程序的web元素信息

Step3:确认微信小程序对应的进程名

Step4:X5内核启动参数配置

代码语言:javascript
复制
// 支持X5内核应用自动化配置
desiredCapabilities.setCapability("recreateChromeDriverSession", true);
// ChromeOptions 使用来定制启动选项,因为在appium中切换context识别webview的时候,
// 把com.tencent.mm:toolsmp的webview识别成com.tencent.mm的webview
// 为了规避这个问题,加上androidProcess: com.tencent.mm:toolsmp
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("androidProcess","com.tencent.mm:appbrand0");
desiredCapabilities.setCapability(ChromeOptions.CAPABILITY,options);
// 初始化会默认将chrome浏览器打开,需要将Browser置为空
desiredCapabilities.setBrowserName("");    

Step5:编写脚本实现自动化测试用例

注意:不清除微信的数据的方法

代码语言:javascript
复制
capabilities.setCapability("noReset", true);
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-10-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试游记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 准备工作
  • 查看ChromeDriver版本
  • 使用UC 开发者调试工具定位页面
    • 修改设置
      • 查看当前页面
      • 进入网页
      • 微信小程序
        • Step1:打开微信小程序webview开关
          • Step2:UC开发者工具识别小程序的web元素信息
            • Step3:确认微信小程序对应的进程名
              • Step4:X5内核启动参数配置
                • Step5:编写脚本实现自动化测试用例
                相关产品与服务
                云开发 CloudBase
                云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档