SoloPi 基于 Python+appium 将 Solopi 导出的 JSON 用例转成可执行的 Python 代码 (后续将通过 stf 支持多设备并行测试)

WYF · 2019年08月27日 · 最后由 焕焕 回复于 2019年11月07日 · 710 次阅读

分享一个将 Solopi 导出的 JSON 用例转成可执行的 Python 代码。GitHub 地址:https://github.com/galaxy-book/SoloPiReplay

前言

前段时间发现一个比较好用的工具,支持一机多控,录制回放,性能测试等等,是支付宝团队研发的,SoloPi: https://testerhome.com/topics/19832 用着还不错,但是导出的测试用例是 JSON 格式的,只能在 Solopi 上使用,而且还加过密,用着不怎么方便,后来看了一下源码,让同事帮着写了个小工具,可以将导出的用例转成 Python,自己试了一下还可以。希望能帮到需要的小伙伴。程序也有很多不足,希望大牛们多提一下改进意见,如果能帮到你,希望能 star 一下。(●'◡'●)

小编环境:

python3.6
appium:1.7.1

开始干活

准备一台安卓设备 (后续将通过 stf 支持多台设备)
cmd 命令行中输入:

adb devices

确保设备已连接
将 solopi 录制后的脚本上传至 data 目录下
修改 config/config.ini,配置所需回放 app 的包名以及 main activity
执行 runCase/start.py(python start.py)

目前发现的问题

1.使用坐标换算定位,不同手机兼容性差,后续将进行优化
2.部分事件未进行重写,例如循环,断言,判断...

最后

本来想放个视频看看效果的,但是发现不会搞~~~

交流群

大家有什么意见或者建议可以加群讨论,也可以提 Issue。(●'◡'●)

共收到 4 条回复 时间 点赞
WYF · #1 · 2019年08月28日 Author
仅楼主可见

[2019-10-23 14:01:51,447] - [文件名]:[startUtil.py] - [线程 id]:[32008] - [等级]:[ERROR] - [日志信息]:未检测到需要执行的 json 文件.
请问,按照步骤进行操作,执行 start.py 后提示这个

WYF #3 · 2019年10月23日 Author
焕焕 回复

录制的 json 文件需要放在转换脚本的 data 目录下

4楼 已删除

执行 reloadJson.py 提示 No matching overloads found. at native\common\jp_method.cpp:121

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