微信小程序自动化分析_包含执行设备及对应的微信版本
背景介绍:
微信小程序是基于腾讯自研 X5 内核,不是谷歌原生 webview。
实现方式:
1、小程序自动化sdk,使用自动化sdk,需要有小程序的开发者权限,以及参考的资料较少,2、选择采用appium+python,实现微信小程序的自动化。启动微信,查找小程序,进入到小程序的webview,对小程序页面进行自动化操作。
实际操作及存在的问题
实际操作结果:
|
设备 |
系统 |
微信版本 |
开启x5调试 |
是否能跑通 |
|
魅族 m1note |
Android 5.1.0 |
7.0.22 |
是 |
是 |
|
Samsung galaxy s520 |
Android 7.12.0 |
8.0.16 |
是 |
否(模拟器获取不到上下文webview),无法操作webview |
|
Samsung galaxy s10 |
Android 9 |
7.0.22 |
是 |
否(模拟器获取不到上下文webview),无法操作webview |
|
JSN_AL00 |
Andrioid 10.0.0 |
8.0.16 |
是 |
否,只能获取微信的上下文),无法进入webview |
结论:
1、 在模拟器下获取不到小程序的webview,无法对元素进行操作,不能在模拟器上对小程序进行自动化
2、 微信版本限制会导致获取不到小程序的webview,只能在可获取到webview的微信版本,对小程序进行自动化,只能在支持webview的微信版本上的真机才能进行小程序的自动化测试,目前测试支持webview版本7.0.22
3、 需要提供可用微信账号,并已进行登录验证,频繁操作可能会导致封号
4、 目前小程序自动化相对不稳定,只能对指定机型和微信版本号是7.0.22的进行自动化测试
微信小程序自动化分析_包含执行设备及对应的微信版本的更多相关文章
- 微信小程序自动化,记录趟过的坑!
项目思想:关键字+数据驱动混合测试 基于Android-微信小程序自动化的关键是:webview的切换 对于微信App来说如何从NATIVE切换到webview的过程 测试版本信息 1.微信版本:7. ...
- python 微信小程序自动化
微信小程序自动化 https://www.cnblogs.com/yyoba/python27 - FautoTesthttps://www.cnblogs.com/yyoba/p/9973731.h ...
- 微信小程序-饮食日志_开发记录01
今天主要了解微信小程序的框架结构以及环境部署等. 小程序的框架主要分为: js.json.wxss.wxml等 和java web的内容相似,主要了解内部代码的使用情况和语言方式. 主要写了页面的框架 ...
- 微信小程序-饮食日志_开发日志
针对假期作业为父母或者身边的人做一款“小软件”这个课题,由于对 android 开发不熟悉 ,所以决定做一款微信小程序. 项目名称:饮食管理日志 目的:身边的人群对摄入食物热量及消耗不清楚,对健康需求 ...
- 微信小程序框架分析小练手(三)——仿香哈菜谱小程序制作
香哈菜谱是一款围绕美食而成的小程序,在这里可以查看各式各样的菜谱. 一.打开微信开发者工具,新建一个项目:xhcp.如下图: 二.建立如下的一些目录: 三.将底部标签导航图标.美食轮播图片.宫格导航图 ...
- 微信小程序框架分析小练手(二)——天气微信小程序制作
简单的天气微信小程序. 一.首先,打开微信开发者工具,新建一个项目:weather.如下图: 二.进入app.json中,修改导航栏标题为“贵州天气网”. 三.进入index.wxml,进行当天天气情 ...
- 微信小程序自动化
解析微信小程序 注意:若上面方法不行就使用下面的 小程序对应的chrome驱动版本包,2.4版本的
- 开发微信小程序中SSL协议的申请、证书绑定、TLS 版本处理等
在上篇随笔<基于微信小程序的系统开发准备工作>介绍了开发微信小程序的一些前期的架构设计.技术路线 .工具准备等方面内容,本篇随笔继续这个步骤,逐步介绍我们实际开发过程中对SSL协议的申请及 ...
- 绑定bindchange事件的微信小程序swiper闪烁,抖动问题解决,(将微信小程序切换到后台一段时间,再打开微信小程序,会出现疯狂循环轮播,造成抖动现象)
微信小程序开发文档-组件-swiper后面追加的新闻如上图所示: 如果在bindchange事件给swiper的current属性对应的值{{current}}赋值,就会造成抖动现象. bindcha ...
- 微信小程序中的rpx与移动设备物理像素
如下图: pt也称逻辑像素点,px物理像素点,1pt等于2px或者3px或更多; iphone6下面0.5pt=1px=1rpx; 使用rpx,小程序在不同设备分辨率下自行转换: PPI=物理像素开根 ...
随机推荐
- dotnet OpenXML 利用合并表格单元格在 PPT 文档插入不可见的额外版权信息
本文告诉大家如何利用 Office 对于 OpenXML 支持的特性,在 PPT 的表格里面,通过合并单元格存放一些额外的信息,这些信息对用户来说是不可见的,但是进行拷贝表格等的时候,可以保存此信息内 ...
- Golang ETCD包的安装使用 golang安装etcd第三方库clientv3 报错 解决
目录 ETCD 官网 视频地址 课件资料 ETCD 日志收集项目 为什么要自己写不用ELK? 项目的架构 上节课项目进度 etcd介绍 安装etcd windows安装 Ubuntu(linux系统) ...
- BIN文件格式
BIN文件里面包含的只有代码生成的机器码,不像ELF文件或者obj文件一样还包含其他东西.MS-DOS.设备驱动文件以及操作系统的bootloader文件都是BIN文件. 在NASM中,BIN文件默认 ...
- ansible(17)--ansible的archive和unarchive模块
1. archive模块 功能:在远端主机打包与压缩: 主要参数如下: 参数 说明 path 要压缩的文件或目录 dest 压缩后的文件 format 指定打包压缩的类型:bz2.gz.tar.xz. ...
- jeecg-boot中分页接口用自定义sql和实体实现
1.controller实现 @RequestMapping(value = "/list", method = RequestMethod.GET) public Result& ...
- 关于小说阅读前端翻页插件推荐turn.js
http://www.turnjs.com
- docker 修改运行容器环境变量,如何修改容器中的环境变量env使长期有效
@ 目录 前言 第一步:查看Docker Root目录 第二步:查到容器的长id(container id) 第三步:停止容器 第四步:编辑修改环境变量env 第五步:重载服务的配置文件 第六步:重启 ...
- Python:Python字符串中的r、u和转义字符
Python中字符串前面我们经常看到加r(R)或u/(U)的前缀,而这两个符号是什么意思呢? 1.r(R) r意为raw,表示不包含转义字符的原生字符串.常见的转义字符包括下列几种: 转义字符 描述 ...
- Kafka架构以及一键化部署
什么是Kafka? Apache Kafka是一个开放源代码的分布式事件流平台,成千上万的公司使用它来实现高性能数据管道,流分析,数据集成和关键任务等相关的应用程序. Kafka的应用场景 构造实时流 ...
- linux 为普通用户配置sudo权限
目录 一.关于sudo 二.sudo的工作过程 三.为普通用户配置sudo权限 3.1 方法一:把普通用户的附属组更改为wheel,使其具有sudo权限(推荐) 3.2 方法二:修改/etc/sudo ...