使用指南
操作页面并等待结果
操作页面并等待结果.
等待真正需要的结果
导航达到 domcontentloaded 不等于所有组件已就绪。使用定位器和明确的结果检查,不依赖固定 sleep。下面的 Playwright 片段要求页面有标签为 Name 的输入框、Save 按钮和 status 元素:
await page.getByLabel('Name', { exact: true }).fill('Ada');
await page.getByRole('button', { name: 'Save', exact: true }).click();
await page.getByRole('status').filter({ hasText: 'Saved Ada' }).waitFor();
console.log(await page.getByRole('status').innerText());把标签和预期结果替换成应用的真实合约,确保定位唯一控件;碰巧命中第一个按钮并不可靠。iframe 内操作应先选择正确 frame,弹窗处理器要在触发操作前注册。
谨慎重试
导航重试与提交表单重试后果不同。提交超时时,先确认是否已成功,不要立即再点击。设置有界超时,用业务确认 ID/状态判断成功,而不只是“浏览器没有报错”。
等待失败时也执行会话清理。终端自动化可通过 browser-cli action fill-label --help、click-role --help 和 wait-text --help 查看所安装版本的语法。
