首页 > 解决方案 > Jest 没有检测到 Promise 中的测试

问题描述

我正在尝试运行此代码,虽然我能够看到记录的测试must run in num browsers loop,但我没有看到must run in browser prom记录,尽管它正上方的行确实

(async () => {
  try {
    jest.setTimeout(300000);
    const NUM_BROWSERS = 2;
    const NUM_PAGES = 3;
    const hrefss = [
    ];
    const browserProms = [];
    for (let i = 0; i < NUM_BROWSERS; i += 1) {
          test('must run in num browsers loop', () => {
            expect(1).toBe(1);
          });
      browserProms.push(
        new Promise(async resBrowser => {
          const browser = await puppeteer.launch();
          console.log('about to run test in promise...')
          test('must run in browser prom', () => {
            expect(1).toBe(1);
          });
          await browser.close();
          resBrowser();
        })
      );
    }
    await Promise.all(browserProms);
  } catch (e) {
    console.error('error in promise >>>>', e);
  }
})();

注释掉第一个测试时,我收到此错误:Your test suite must contain at least one test.

标签: javascriptjestjs

解决方案


推荐阅读