准备工作:
1:下载微信开发者工具
2:程序源码
整个过程如下:
1、安装
安装好微信开发者工具后,PYCHARM新建项目,新建虚拟环境,安装miniumtest
pip install https://minitest.weixin.qq.com/minium/Python/dist/minium-latest.zip
安装完成后,查看pip list,发现urllib3
2、校验
终端输入 minitest -v ,出现报错提示,这里是urllib3的版本缺陷
只需要降级版本即可
pip install urllib3==1.26.15
此时运行正常。
打开微信开发者工具,先导入项目,这里演示的是src文件夹就是目录所在。
这里使用测试号,点确定就可以打开了。或者执行命令行启动也可以,方法如下:
3、开发者工具能力的检查--用代码调用
windows "<微信开发者工具的安装目录>\cli.bat"auto -- project "测试项目的绝对路径" --auto-port 9420 我的微信开发者工具安装目录:C:\Program Files (x86)\Tencent\微信web开发者工具\cli.bat 测试项目的目录:D:\Python相关\APP自动化\src\src # project.config.json的上级目录 "C:\Program Files (x86)\Tencent\微信web开发者工具\cli.bat" auto --project "D:\Python相关\APP自动化\src\src" --auto-port 9420 # 终端执行命令也可以启动 """
如果弹出询问是否信任,点击信任。
4、检查整个环境
新建个PY文件,导入minium,检查如下minium如下:
import minium mini = minium.Minium({ "project_path": "D:\Python相关\APP自动化\src\src", #项目的绝对路径“ "dev_tool_path": "C:\Program Files (x86)\Tencent\微信web开发者工具\cli.bat" # 微信开发者工具的命令行执行文件的绝对路径 }) print(mini.get_system_info()) # 获取整个环境的系统详情,如果成功,表示和小程序打通了
如果电脑慢,可能会出错,多运行几次会好的话就证明电脑配置不行。渲染不过来。
其实做小程序自动化的过程中,一般走的是通过配置文件来配置被测程序等信息。默认是通过config.json文件。所以通过pycharm测试的时候,可以建立一个config.json的文件,在这个文件中配置所需配置项。一般需要的是被测项目和微信开发者工具路径和debug模式,
注意,json文件中不能有注释。用{}把配置信息括起来,而且路径的斜杆改成左斜杠(Windows)
5、编写脚本
新建PY文件,
import minium # 继承了unitest,所以走继承方式 class Test_1(minium.MiniTest): # 走继承方式,使得一个类转化为用例对象,类名必须是Test开头 def test_01(self): # self就是会话对象 # self.page # self.page是会话中的页面对象 # 元素定位就是在页面对象中寻找元素,它的寻找元素不是find_element,是get_elementele = self.page.get_element("/page/view[4]/view[3]") # 注意,这里不是(by, value),直接xpath的路径就行了
ele.click()
先用微信开发者工具调试模式查找元素,注意:在微信开发者工具中调试器中,找元素非常不准。直接代码调试运行查询。
整套逻辑是:通过Minitest的初始化代码,找config.json的项目路径和小程序开发者工具的执行路径,把他们启动后作为一个服务的存在,之后代码传给服务,由服务执行代码里的脚本逻辑
6、 生成报告 终端执行命令:minitest -m 5_调试脚本的编写 -c config.json -g
-m 指定运行的脚本(不要带.py)
-c 指定config
-g 生成测试报告
执行完毕后,在outputs目录下生成报告,打开index.html,然后用浏览器打开
python中有个命令可以打开目录中的html文件,通过这个命令也可以打开测试报告,如下:
python -m http.server 12345 -d outputs
输入这个命令后,在浏览器中输入127.0.0.1:12345 就可以查看报告了
同局域网用户也可以直接改IP进行访问。
标签:src,minium,微信,APP,json,开发者,自动化,工具 From: https://www.cnblogs.com/gezirui/p/17467251.html