{"repo":"Meituan-Dianping/lyrebird","free":true,"listed":false,"github":"https://github.com/Meituan-Dianping/lyrebird","clone":"git clone https://github.com/Meituan-Dianping/lyrebird.git","description":"移动应用插件化测试工作台","language":"Python","stars":1227,"topics":["mock","proxy","python","lyrebird","testing-tools","mobile-testing","android-testing","ios-testing"],"license":"MIT","category":"networking-infra","readme_excerpt":"Lyrebird PYPI DockerHub Docs --- - 简介 - 快速开始 - 环境要求 - 安装 - 启动 - 连接移动设备 - 查看及录制数据 - 使用 Mock 数据 - Mock 数据管理 - 基本命令 - 感谢 简介 Lyrebird 是一个基于拦截以及模拟 HTTP/HTTPS 网络请求的面向移动应用的插件式测试平台。 Lyrebird 不只提供 UI 操作，也可以通过 API 控制所有功能。 Lyrebird 也可作为服务端接口测试 mock 工具使用。 Lyrebird 可以通过 插件 扩展能力，实现埋点自动测试、API 覆盖率统计、移动设备及 App 控制和信息记录、自定义检查脚本等一系列功能。 Lyrebird (琴鸟) 不但美丽壮观，且能歌善舞。它不但能模仿各种鸟类的鸣叫声，还能学人间的各种声音。如汽车喇叭声、火车喷气声、斧头伐木声、修路碎石机声及领号人的喊叫声等。歌声婉转动听，舞姿轻盈合拍，是澳洲鸟类中最受人喜爱的珍禽之一。 --- 快速开始 环境要求 - macOS/Windows Python = 3.7 Windows 需要的额外步骤： - 下载并安装编译版 OpenSSL - 设置系统环境变量（根据实际路径调整） - LIB = C:\\Program Files\\OpenSSL-Win64\\lib - INCLUDE = C:\\Program Files\\OpenSSL-Win64\\include 安装 启动 连接移动设备 - 启动 Lyrebird 后，移动设备需要通过代理的方式将请求数据接入。 - 将移动设备的代理地址设为当前电脑地址，默认端口为 4272（IP 地址可查看 Lyrebird 启动时输出的日志） (注意 ⚠️：4272 端口上使用的 mitmproxy 服务为外置依赖，需要用户自行安装 mitmproxy。如果没有安装 lyrebird 会尝试自动安装该应用) - 被测设备上用浏览器打开 http://mitm.it, 选择对应操作系统安装证书 Lyrebird 接入有两种方式: a. 设置代理 b. 直连 查看及录制数据 现在，可以开始操作移动设备了。Lyrebird 将显示捕获到的 HTTP/HTTPS 请求。 选中请求后，可以将它保存到已激活的 mock 数据组中。 使用 Mock 数据 激活 mock 数据选择器，选择 mock 数据后。经过 Lyrebird 的请求会被 mock，如果 mock 数据中没有匹配的数据，则会代理该请求。 可以在 DataManager 界面管理 mock 数据。 Mock 数据管理 mock 数据可由左边导航栏切换到 DataManager 界面进行编辑管理 --- 插件 文档在建中 --- 基本命令 - lyrebird 以缺省参数启动 lyrebird - lyrebird -v 以输出详细日志模式启动 lyrebird - lyrebird -b 启动 lyrebird 不默认打开浏览器 - lyrebird --mock 9090 --proxy 4272 --data . --config your/config/file 指定参数启动 lyrebird 参数： --mock 默认9090 ， mock服务及前端端口 --proxy 默认4272， 代理服务端口 --data 默认./data, mock数据根目录 --config 默认 /.lyrebird/conf.json, lyrebird启动配置 --- 感谢 本工具中","default_branch":null,"files":null,"tree":[],"storefront":"/r/Meituan-Dianping","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Meituan-Dianping/lyrebird/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}