Playwright中page.goto("")与page.goto("/")的行为差异是什么?
page.goto("") 和 page.goto("/") 在配置baseUrl后的行为差异 这两种调用确实存在细微但关键的差异,核心在于URL的解析逻辑:
page.goto("")的行为:
空字符串会被当作「当前页面的相对路径」处理。如果是测试中的首次导航(页面还未加载任何URL),它会直接使用配置的baseUrl作为目标地址;但如果已经处于某个子页面(比如baseUrl + "/products"),调用page.goto("")会重新加载当前所在的子页面,而非跳回baseUrl的根地址。page.goto("/")的行为:
单独的斜杠代表「根路径」,无论当前处于哪个层级的子页面,调用它都会直接导航到baseUrl对应的根地址。比如当前在baseUrl + "/products/detail",执行page.goto("/")会立刻跳回baseUrl。
举个实际例子,假设baseUrl配置为https://my-app.com:
- 首次执行
page.goto("")→ 跳转至https://my-app.com - 先执行
page.goto("/products"),再执行page.goto("")→ 跳转至https://my-app.com/products - 无论当前在哪个页面,执行
page.goto("/")→ 始终跳转至https://my-app.com
内容的提问来源于stack exchange,提问作者I.sh.
相关产品推荐
相关产品推荐

