Как расширить тест от приспособлений для шуток для запуска теста драматурга?

Я хочу написать несколько тестов с помощью шутки и использовать дополнительные возможности с помощью тестовых приспособлений.

// тесты/sample.test.ts

      
jest.setTimeout(60 * 1000);

import { test } from './jest-fixture';
import { chromium } from 'playwright';

describe("Sample test", () => {
    test(`sample test on chromium`, async ({ connect }) => {
        const browser = await connect('chromium');
        const page = await browser.newPage();
        const page.close();
    });
});

// шутка-fixture.ts

      
import * as playwright from 'playwright';
import { Browser } from 'playwright';
import {test as base} from '@jest/globals';

export type SampleFixture = {
   wsEndpoint: string;
}

export type Options = {
  connect: (browserName: string) => Promise<Browser>;
};

export const test = base.extend<SampleFixtures & Options>({
  
  wsEndpoint: async (use) => {
    const wsEndpoint = getEndpoint();
    await use(wsEndpoint);
  },

  connect: async ({ wsEndpoint }, use) => {
    const browsers: Browser[] = [];
    await use(async (browserName: string) => {
      const browser = await playwright[browserName as 'chromium'].connect(wsEndpoint);
      browsers.push(browser);
      return browser;
    });
    for (const browser of browsers)
      await browser.close();
  }
});


Я попытался создать вышеуказанный файл приспособления и расширил тест из шутки, но получаю сообщение об ошибке: свойство «расширить» не существует для типа «ItConcurrent». Есть ли другой способ расширить тест из шутки или я делаю что-то не так?

Здесь есть способ расширить ожидания от глобальных шуток, но как расширить «тест»?

0 ответов

Другие вопросы по тегам