活动介绍
TMQ第四十六期在线沙龙分享活动圆满结束啦!
本次分享的主题:FAT——专业服务于微信H5/小程序UI自动化测试
共有295位测试小伙伴报名参加活动。
想知道活动分享了啥吗?
请往下看吧!
嘉宾
郑铮铨:腾讯测试开发工程师,目前主要负责应用宝、手管的插件及工具开发,自动化测试等。在Android开发及工具开发方面有一定的经验。
分享主题
FAutoTest框架的基本概述
FAutoTest框架的前期准备
FAutoTest框架的使用及遇到问题如何解决
问答环节
1、只支持python2.7么,之后有没有考虑python3?
答:FAutoTest目前是处于成长中的框架,当前仅支持python2.7.x版本,关于python3目前在规划中。
2、可以支持其它语言么,在ios上可否使用,使用时手机需要root吗?
答:目前只支持python语言,ios因协议不同无法使用,使用时无需root。
3、小程序怎么找xpath?
答:手机通过USB连接电脑,采用源码assert目录下提供的微信6.6.3版本,打开微信调试模式,然后手动建立电脑与手机之间的连接(可按视频中小程序手动建立连接的方法或者文档提供的方法),连接成功后在chrome-inspect,然后找到自己的小程序,然后选定控件,右键进行copy xpath即可;注意微信在最新版本中唯一入口可从搜一搜查找指定小程序,再进入小程序中才可在chrome-inspect中显示。
4、lauchWXView()这里的点击通讯录,或者点击发现等这个底层实现是怎么样的,是将微信的xml dump下来,然后找到坐标的?还是什么方法呢?
答:这里利用业界已经相对成熟的方案,uiautomator能提供对应的查找控件并进行点击的API,具体可参考Github描述。其底层实现应该是利用android内部提供的AccessibilityServices机制,从而实现快速定位。具体可看对应的介绍:AccessibilityService。 5、查找微信的pid能不能同时支持双开或者企业微信?目前有项目是在企业微信里,今天试了一下貌似不行,是因为企业微信不是X5内核吗?
答:可以,可以尝试按以下步骤进行修改即可使用:第一步,修改_ADB_FIND_STR_CMD里面获得指定App进程号的方法,如企业微信是com.tencent.wework等,其它类x5内核类似;第二步,修改fetchWeixinToolsProcessPid里面的方法,使其连接上你所要fetch上的上面获取的那个进程号即可。 6、我需要get href的内容要怎么自定义方法?
答:我们在github上提供对应的API,可以查看APIS的操作说明。定义get href的内容可以使用getElementSrcByXpath(self,xpath) 或者getElementByXpath(self, xpath)方法,关于更多lxml的操作方法可见:lxml。
7、如果遇到需要上传照片或者文件等调用等非H5的流程,框架如何处理呢?
答:框架提供扩展功能,根据自己业务需要扩展相应的API;如上传图片这种与测试流程没有强相关的功能,可以在指定框架的测试模块(H5/QQ/WX)的用户交互层代码扩展API,不过最好建议自己独立成一个公共模块组件扩展,利用request即可独立完成上传图片操作。
8、使用uiautomator怎么定位webview里面的元素?比如微信搜索小程序的搜索结果页
答:uiautomator提供丰富的api,具体可访问uiautomator,比如我们可利用d(text=“xxx”).click()来进入微信小程序搜索页。
9、框架时使用时最需要注意什么吗?
答:环境adb的配置以及微信使用时要记得打开调试功能,很多问题很多是由于环境配置以及微信没有打开调试功能引起。
沙龙视频
手机扫码下载PPT
长按指纹识别图中的二维码,获取更多测试干货分享!将我们公众号置顶
不会漏掉我们的原创干货哦!