其他测试框架 FAutoTest 测试框架使用总结

sandy · 2018年11月27日 · 最后由 sandy 回复于 2018年12月11日 · 3300 次阅读

经过几天对 FAutoTest 框架的使用,现总结如下:
一、环境搭建

  1. Python 版本安装
    下载 & 安装 Python,安装后在终端输入命令 python -V 和 pip list,能够执行,说明 Python 环境配置成功。

  2. Java JDK 版本安装
    下载 & 安装 Java JDK 安装后在终端输入命令 java -version,java, javac 命令能够执行,则 Java 环境配置成功。

  3. Android SDK 版本安装
    下载 & 安装 Android Studio,然后在里面安装 Android SDK

  4. 配置 adb 环境
    安装 Android Studio 后,配置 SDK 环境(若自动安装不成功,可到手动下载安装 ,安装后在终端输入命令 adb version 执行有结果,则说明配置成功

  5. IDE 安装
    下载 & 安装 Pycharm CE

FAutoTest 开发环境安装
库名称 版本 下载地址
uiautomator 0.3.2 https://pypi.org/project/uiautomator/#files
lxml 4.2.3 https://pypi.org/project/lxml/4.2.3/#files
bidict 0.17.0 https://pypi.org/project/bidict/#files
websocket-client 0.44.0 https://pypi.org/project/websocket-client/#files

以上第三方库 uiautomator、websocket-client、lxml、bidict,可用 pip 形式安装,如:python -m pip install uiautomator==0.3.2
我这里是已经安装过了,再次安装时,会打印以下信息。

安装自身框架
pip install dist/fastAutoTest-xxx.whl(whl 文件请在 dist 目录下手动下载,下载地址:https://github.com/Tencent/FAutoTest)

二、打开调试模式,并初始化
打开微信 Debug 模式,安装 TBS 内核
可在微信中打开 X5 调试地址:http://debugx5.qq.com
TBS 内核安装地址:http://debugtbs.qq.com
详情方式见:http://x5.tencent.com/tbs/guide/debug/faq.html

H5 建立连接:
adb shell am force-stop com.tencent.mm
adb shell "ps | grep com.tencent.mm:tools"
adb forward tcp:9222 localabstract:webview_devtools_remote_%s

查看是否成功建立连接,打开http://localhost:9222/json地址后,如果有返回信息,则连接成功。

小程序建立连接:
adb shell am force-stop com.tencent.mm
adb shell "dumpsys activity top | grep ACTIVITY"
adb forward tcp:9223 localabstract:webview_devtools_remote_%s

查看是否成功建立连接,打开http://localhost:9223/json,如果有返回信息,则连接成功。

三、查看页面元素
打开 chrome://inspect/#devices,点击 inspect 查看页面元素。(使用过程中可能需要 ***)

四、使用过程中遇到的一些问题
1.目前框架只支持 python2
2.暂时只支持 Android
3.运行非常缓慢
4.检查页面的元素信息,有时候需要 *** 才能看到
5.FAutoTest 主要是测试网页的,对应 native 应用,需要结合 uiautomator 框架使用
6.测试微信小程序时,微信版本需要使用 6.6.3,否则有可能会出现连接失败提示
7.测试 h5、小程序页面时,在打开被测试页面之前,需要先初始化建立连接。
8.运行过程中,很不稳定,经常会报一些莫名其妙错误。如:"RuntimeError: 无法获取 debug url,并检查是否配置了代理,是否已经建立了 websocket 连接未关闭",
"RuntimeError: 获取小程序页面特征失败","ValueError: url is invalid","Exception: "等等。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 9 条回复 时间 点赞

请问下楼主RuntimeError: 获取小程序pid失败,请检查是否在小程序首屏进行初始化这个错误如何解决的?我现在卡在这里,调不通 demo

DC 回复

http://localhost:9223/json这个链接可以访问吗?

sandy 回复

访问不了,adb 的命令都操作了,一时可以一时不可以。还有无法获取debug url获取小程序页面特征失败。这两个坑楼主填了吗?

sandy 回复

很奇怪,有时候 6.6.3 不行,有时候 6.7.3 可以

DC 回复

看下你的微信版本是 6.6.3 的吗?

请问下楼主,RuntimeError: 获取小程序 pid 失败,请检查是否在小程序首屏进行初始化,我现在一直报这个错误,这个是跟微信版本有关吗,还有我在 cmd 里执行了这几个命令后,http://localhost:9223/json这个链接也访问不了

THaoXue 回复

很大概率是和微信版本有关的,然后看看 Debug 模式, TBS 内核是否安装好了

sandy 回复

作者你好,我可以打开http://localhost:9223/jsonRuntimeError:这个链接,但是执行脚本的时候还是会报错 获取小程序 pid 失败,请检查是否在小程序首屏进行初始化。。。。请问这又是什么原因呢?困扰了好久了。。。

Yiliayan 回复

运行程序前需要先打开被测试的 h5 页面或小程序

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册