让 Puppeteer 等待 globalSetup 完成
Let Puppeteer wait for globalSetup to finish
我使用 Jest-Puppeteer 对 Web 应用程序进行端到端测试。所有测试 运行 与异步函数并行。现在我发现第一个测试已经 运行s 在 globalSetup 完成和数据准备完成之前(初始化客户端设置等)
我曾尝试在请求后超时,但这不起作用,因为现在所有请求都有超时。
import puppeteer from "puppeteer";
import { getUrlByPath, post } from "../helper";
module.exports = async function globalSetup(globalConfig) {
await setupPuppeteer(globalConfig);
puppeteer.launch({args: ["--no-sandbox", "--disable-setuid-sandbox"]}).then(async browser => {
const page = await browser.newPage();
await post(
page,
getUrlByPath("somePath"),
"prepare_data_for_testing",
);
await browser.close();
});
};
上面的代码运行是一个globalConfig,之后它开始为测试环境准备数据。
有没有办法让测试套件 运行 在这个脚本 returns 之后 post 和 http 200: ok
?
我不得不将 await
放在 puppeteer.launch
之前,并在顶部添加 require("expect-puppeteer");
。
我使用 Jest-Puppeteer 对 Web 应用程序进行端到端测试。所有测试 运行 与异步函数并行。现在我发现第一个测试已经 运行s 在 globalSetup 完成和数据准备完成之前(初始化客户端设置等)
我曾尝试在请求后超时,但这不起作用,因为现在所有请求都有超时。
import puppeteer from "puppeteer";
import { getUrlByPath, post } from "../helper";
module.exports = async function globalSetup(globalConfig) {
await setupPuppeteer(globalConfig);
puppeteer.launch({args: ["--no-sandbox", "--disable-setuid-sandbox"]}).then(async browser => {
const page = await browser.newPage();
await post(
page,
getUrlByPath("somePath"),
"prepare_data_for_testing",
);
await browser.close();
});
};
上面的代码运行是一个globalConfig,之后它开始为测试环境准备数据。
有没有办法让测试套件 运行 在这个脚本 returns 之后 post 和 http 200: ok
?
我不得不将 await
放在 puppeteer.launch
之前,并在顶部添加 require("expect-puppeteer");
。