Robot Framework+Appium之微信H5自动化测试
前言
总会有人问微信的自动化测试怎么做。其实我不太明白,为啥你要对ta做自动化测试啊,除非你们公司产品是基于微信做的开发否则没必要。即使一个公众号我也觉得没必要做自动化测试,基本功能点下没问题就可以了,毕竟都是配置的,除非你后台配置错了。(有时候真搞不懂这胡乱的测试,你咋不把整个微信都测一遍啊)
本质
微信其实就是一个混合的app,客户端里嵌入的webview,明白这个就好说了。大家一定要注意,app中的native可以用uiaotumator来查看元素,但webview里的ta是不行的可以使用chrome来查看,这个是很多初学者不明白的地方。
一、微信NATIVE_APP界面中的元素
app原生元素定位(常用)
driver.find_element_by_id(“resourse-id”)
driver.find_element_by_name(“text”)
driver.find_element_class_name(“class”)
driver._find_element_by_accessibility_id("content-desc")
二、微信webview页面中的元素定位
>手机打开【开发者模式】
>app必须是debug模式(别问我怎么弄,自己问开发去)
>手机通过USB连接电脑,且能够识别出来手机(不会的自己google去。。。)
>可以FQ。。。你懂的(真不懂的话看这里的杀手锏:Appium之离线方式连接真机)
>具体打开调试操作步骤见《Appium之测试微信小程序 Webview》篇
三、Robot Framework + Appium代码实战
1、测试用例目录
2、测试用例
3、关键字
4、环境配置
5、创建目录步骤如下:
>首先双击打开robot.bat启动,然后创建文件夹并命名如下
>相关资源配置
>点击元素和输入文本框
>点击坐标和模拟键盘
>页面包含元素和获取元素属性
>滑动屏幕
>执行N次循环并退出
>执行N次循环
四、遇到的问题
本篇是使用小米5S、Android 7.0版本验证的,为此需要注意以下几点
1、在手机端‘设置--更多设置--开发者选项’分别打开按钮开关:1).开启开发者选项;2).USB调试;3).USB安装;4).USB调试(安全设置)
2、查看是否是webview页面或NATIVE_APP页面可以打开手机端‘设置--更多设置--开发者选项---绘图中的‘显示布局边界’按钮’
3、【已解决】Chrome的DevTools的Inspect出错:404 Not Found The resource could not be found

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
swift的值类型和引用类型详解(转载)
原文地址:https://www.cnblogs.com/luoxiaofu/p/8528383.html 关于“值类型嵌套引用类型”的内存地址情况,我自己实验的结果与作者不同: //2. 值类型嵌套引用类型 print("值类型嵌套引用类型 \n") class PointClass: CustomStringConvertible { var x: Double var y: Double var description: String { return "(x: \(x), y: \(y)" } init(x: Double, y: Double) { self.x = x self.y = y } } struct CircleNew { var r: PointClass } var c1 = CircleNew(r: PointClass(x: 5, y: 6)) var c2 = c1 c2.r = PointClass(x: 10, y: 16) print("c1: \(c1)") print("c2: \(c2)") c2.r.x = 100 print("c1: ...
-
下一篇
直播APP开发之iOS开发中的列表优化思路
APP开发中,列表可能是平时我们打交道最多的UI控件之一,其重要性不言而喻,对其性能的优化同样至关重要。而对于iOS开发,列表就是我们常说的UITableView / UICollectionView。在进行直播APP开发时针对于列表的优化自然是必不可少的。 这里以UITableView为例简略介绍一下列表优化思路。 (1) cell复用。这是每一个iOS开发者都非常熟悉的一部分内容。我们经常在cellForRowAtIndexPath:中为每一个cell绑定数据,实际上在调用cellForRowAtIndexPath:的时候cell还没有被显示出来,为了提高效率我们应该把数据绑定的操作放在cell显示出来后再执行,可以在tableView:willDisplayCell:forRowAtIndexPath:(以后简称willDisplayCell)方法中绑定数据。注意willDisplayCell在cell 在tableview展示之前就会调用,此时cell实例已经生成,所以不能更改cell的结构,只能是改动cell上的UI的一些属性(例如label的内容等)。 (2) 减少视图数...
相关文章
文章评论
共有0条评论来说两句吧...