剧作家:自动测试失败时不会删除自动测试容器

问题描述

即使测试由于某种原因失败,如何将Playwright中的测试容器设置为自动删除?我们在测试的“之后”部分中使用了.deleteContainer方法,但这仅在不中断测试的情况下有效。知道如何在测试中断的情况下实现一些自动删除方法吗?

这是我们的测试套件的外观:

export const someSuite = ({
  module,description,tests,snapshots,}: SuiteArgs) => {
  const browsersToRun = browsers;

      browsers.forEach((browserType) => {
    describe(`[${module} - ${browserType}] ${description}`,() => {
      const testContext = new TestContext();

      before(async () => {
        testContext.container = (
          await DockerAPI.ContainerManager.createContainer(snapshots)
        ).containerInfo;
        testContext.browser = (await playwright[browserType].launch({
          ...getBrowserSpecificArgs(browserType),headless: false,})) as Browser;
        testContext.browserContext = await testContext.browser.newContext();
        testContext.page = await testContext.browserContext.newPage();
      });

      tests(testContext);

      after(async () => {
        **await DockerAPI.ContainerManager.deleteContainer(
          testContext.container.uuid**
        );
        await testContext.page.close();
      });
    });
  });
};

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)