尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Maestro 移动端 E2E 测试新手教程:用 YAML 三步跑通你的第一条自动化流程

Maestro 移动端 E2E 测试新手教程:用 YAML 三步跑通你的第一条自动化流程 Maestro 移动端 E2E 测试新手教程用 YAML 三步跑通你的第一条自动化流程【免费下载链接】MaestroPainless E2E Automation for Mobile and Web项目地址: https://gitcode.com/GitHub_Trending/ma/MaestroMaestro 是一个开源移动端 E2E 测试框架你用几行 YAML 描述打开应用、点按钮、输入文本、断言页面它在 Android、iOS 模拟器和浏览器里真实执行这套流程替代手写的平台专属测试代码。适合刚接触 UI 自动化的新手、测试工程师和需要验收核心链路的产品同学。会读 YAML 就能写官方承诺五分钟写下第一条测试全程不需要碰测试框架代码。 3分钟首次运行 Maestro最短路径只有两条命令先装 CLI再跑一条现成测试。安装 CLI需 Java 17 及以上curl -fsSL https://get.maestro.mobile.dev | bash拉一条现成流程并运行maestro test e2e/workspaces/wikipedia/android-flow.yaml仓库自带大量样例流程e2e/workspaces/ 下有 Wikipedia 的移动端流程和登录 Web 商城的完整用例直接拿来当模板不用自己从零写。 不写一行代码用 YAML 写出第一个自动化流程流程文件很短开头声明被测应用的appId正文是一列命令每行一个动作。launchApp启动应用tapOn: 搜索点击屏幕上写着搜索的元素inputText: 智能手机输入文本assertVisible: 首页推荐断言该文案出现没出现就算失败命令之间默认自动等待元素出现你不用手写sleep这是它和传统脚本最大的体感差异。写完的文件丢进任意目录maestro test 文件路径就能执行。更多写法可参考 官方文档。一条流程测三个端只需改一处跨平台复用是 Maestro 的主场命令本身平台无关换端只改应用标识。Android 和 iOS 流程几乎逐行相同appId分别填包名和 bundle id平台特有的差异比如首次启动的权限弹窗拆成子流程用runFlow按平台各引一份。仓库里的 Wikipedia 样例正是这么组织的主流程共享onboarding与launch-clearstate子流程按 android、ios 各放一份命令顺序完全一致。Web 场景把appId换成url即可登录、点击、断言的写法保持不变。维护成本因此不随平台数量翻倍。完整示例Web 登录到商品页的 E2E 测试下面这条流程自包含存成login.yaml后用maestro test login.yaml运行无需任何其他配置。url: https://www.saucedemo.com/ --- - launchApp - tapOn: Username - inputText: standard_user - tapOn: Password - inputText: secret_sauce - tapOn: Login - assertVisible: Products操作 → 预期效果逐步对照打开登录页 → 浏览器加载 saucedemo 商城登录界面填入用户名密码并点击 Login → 跳转到商品列表assertVisible: Products→ 断言Products标题出现失败即报红追加一行tapOn: Sauce Labs Backpack与assertNotVisible: Sauce Labs Bike Light→ 进入商品详情后列表页文案应不再可见任何一步卡住报告会附上当时的截图和定位到具体命令的日志不用人肉重放排查。❓ 新手高频问题速查提示 Element not found 怎么办确认设备或模拟器真的开在前台、应用装好了。偶尔出现又合理的元素加optional: true把它标成可选项元素确实该出现却没出现那就是被测应用真有 bug流程失败是正确行为。测试会误报失败吗需要自己加 sleep 吗不用。命令默认等待元素就绪动态加载的界面靠自动等待消化手工 sleep 反而会拖慢整套用例官方样例里完全看不到它。如何确认一次失败具体卡在哪一步每条命令执行后都有截图留存终端输出会指出失败命令和期望文案配合报告里的界面快照定位到元素级而不是流程级。能接进 CI 吗能。maestro test的退出码就是测试结果全绿返回 0任何一条失败返回非 0直接接进流水线当门禁。谁应该试用 Maestro一句话总结Maestro 把跨平台 E2E 测试从写测试代码降级成描述用户操作自动等待和失败定位替你把常见的坑填了。如果你维护 Android 或 iOS 应用、想在 CI 里守住登录、下单这类核心链路或者你是不写代码、只关心流程通不通的产品与 QA 同学建议先用maestro test跑一遍仓库自带的工作区再把自己的流程搬上来。【免费下载链接】MaestroPainless E2E Automation for Mobile and Web项目地址: https://gitcode.com/GitHub_Trending/ma/Maestro创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表