Java自动化测试(Hybrid应用自动化 35)
准备工作
准备android4.4+版本以上的手机/模拟器
在app源码中将webview调试模式打开
webview.setWebContentsDebuggingEnabled(true);
安装UC开发者工具
查看ChromeDriver版本
进入设置
->应用
,点击显示系统进程
找到Android System WebView
,它的版本也就是75.0.3770.143
在chromedriver中找到对应的版本
https://npm.taobao.org/mirrors/chromedriver/?utm_source=testingpai.com
使用UC 开发者调试工具定位页面
https://dev.ucweb.com/docs/pwa/docs-zh/xy3whu
修改设置
查看当前页面
进入网页
@Test
public void test() {androidDriver.findElement(MobileBy.xpath("//*[@text='柠檬社区']")).click();System.out.println(androidDriver.getContextHandles());//[NATIVE_APP, WEBVIEW_com.lemon.lemonban]//切换到WEBVIEW_com.lemon.lemonbanandroidDriver.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内核启动参数配置
// 支持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:编写脚本实现自动化测试用例
注意:不清除微信的数据的方法
capabilities.setCapability("noReset", true);
Java自动化测试(Hybrid应用自动化 35)相关推荐
- java客户端程序用什么自动化测试_五大Java自动化测试框架
51CTO官微 技术资讯/行业精华/产品心得 多年来,Java一直是服务器端应用开发的首选编程语言.随着时间的推移和自动化测试的兴起,业界出现了许多基于Java,并根据不同的业务逻辑而发展起来的开源框 ...
- 虫师selenium3+python自动化测试电子版_Selenium3 Java自动化测试实战 第三版.pdf
<Selenium2Java 自动化测试实战(修正版)> Selenium3 Java 自动化测试项目实战 第三版( ) 作者:虫师 1 <Selenium2Java 自动化测试实战 ...
- Java中性能优化的35种方法汇总
原文地址:http://www.jb51.net/article/102831.htm 前言 对程序员们来说,代码优化是一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于 ...
- Java自动化测试框架-11 - TestNG之annotation与并发测试篇 (详细教程)
1.简介 TestNG中用到的annotation的快速预览及其属性. 2.TestNG基本注解(注释) 注解 描述 @BeforeSuite 注解的方法只运行一次,在当前suite所有测试执行之前执 ...
- Java自动化测试框架-06 - 来给你的测试报告化个妆整个形 - (下)(详细教程)
简介 经过上一次的化妆和整形,有客户提出需求能不能将那个普通会员的套餐再升级一下,再漂亮一点.所以这次咱们就来看看从哪里下刀可以使它变得再漂亮一点点. 上一篇文章修改了一些基本的ReportNG信息, ...
- java自动化测试成长日记-之CVS客户端和服务端安装和部署1:CVS服务端的配置和基本使用...
CVS服务端的配置和基本使用 在做java自动化测试集成环境搭建的时候,无论怎样,你都会选择一个源代码管理工具,如:SVN,CVS,VSS等:但如果你使用Eclipse工具,建议你使用CVS源代码管理 ...
- Java自动化测试系列[v1.0.0][TestNG测试开发环境配置]
基于之前写的一篇文章Java自动化测试系列[v1.0.0][Maven开发环境]的基础上,阐述如何配置单元测试框架TestNG的测试开发环境 创建Maven项目 启动IDEA,点击Create New ...
- 自动化测试和测试自动化你分的清楚吗?
目录 目录 前言 两种自动化测试 为什么测试自动化对连续测试至关重要 使测试自动化成为现实 拥抱连续测试 总结 前言 当我们谈论持续测试,以及持续交付和DevOps时,"自动化"一 ...
- Java自动化测试调试中遇到的问题
前言:记录下遇到的问题 Java自动化测试在调试中遇到的问题总结 1.遇到的Waring:must be unique [WARNING] 'dependencies.dependency.(grou ...
最新文章
- [SCOI2007]降雨量
- LeetCode Lexicographical Numbers(dfs)
- 理解MySQL--索引与优化(转载)
- Maven 私服搭建
- 值得借鉴的新年海报设计|PSD分层模板,图层素材随心用
- jira 查找issue_JIRA使用教程:高级搜索—字段参考4/4
- 硬件检测你用哪一款工具呢?
- Sharding-JDBC水平分库(水平数据库分片策略配置)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记010
- 13数据库表空间回收
- UItextView使用详解
- Echart报错: Map china not exists. You can download map file on
- ffmpeg之H265解码
- Spring Boot干货系列(一)入门篇
- 勒索病毒锁死文件加密
- Java实现微信公众号客服功能和本地联调
- 【电路理论】2-6 线性电阻电路解答的存在性与惟一性定理
- ABR算法研究综述 | A Survey on Bitrate Adaptation Schemes for Streaming Media Over HTTP(IEEE COMST‘18)阅读笔记
- dsp广告和信息流广告区别_信息流广告和dsp的区别在哪?
- 星聚宝—云服务器快速搭建网站(阿里云服务器举例)
- 你了解净水器滤芯知识多少?