让 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");