Playwright如何为globalSetup.ts文件设置超时时间?
在Playwright的globalSetup.ts中自定义超时
Playwright的globalSetup默认沿用配置文件里的timeout默认值(30秒),针对全局设置流程加载网站耗时超30秒的场景,有两种可靠的超时调整方案:
方案1:在globalSetup代码中单独设置页面/操作超时
在globalSetup函数里创建页面时,显式给导航、操作类步骤设置超时:
import { chromium } from '@playwright/test'; async function globalSetup() { const browser = await chromium.launch(); const context = await browser.newContext(); const page = await context.newPage(); // 给页面导航单独设超时(示例为2分钟) page.setDefaultNavigationTimeout(120000); // 给所有页面操作(如点击、等待元素)设超时 page.setDefaultTimeout(120000); // 执行全局设置操作,比如加载慢网站 await page.goto('https://your-slow-site.com'); // 其他全局初始化步骤... await browser.close(); } export default globalSetup;
方案2:在playwright.config.ts中配置globalSetup专属超时
如果不想在globalSetup代码里硬编码,可以直接在配置文件中指定全局设置流程的总超时:
import { defineConfig } from '@playwright/test'; export default defineConfig({ // 常规测试用例的超时 timeout: 30000, // 给globalSetup单独设置总超时(示例为2分钟) globalSetupTimeout: 120000, });
注意:两种设置可以组合使用——
globalSetupTimeout限制整个全局设置函数的总执行时长,页面级超时限制单个导航/操作的时长,按需搭配即可。
内容的提问来源于stack exchange,提问作者Saurav Likhar
相关产品推荐
相关产品推荐

