首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法使用jest-puppeteer重试不稳定的测试?

有没有办法使用jest-puppeteer重试不稳定的测试?
EN

Stack Overflow用户
提问于 2019-12-20 00:23:38
回答 2查看 4.4K关注 0票数 3

我遇到了一个问题,那就是在Jest中没有内置的方法来重试不稳定的测试。我使用的是Jest + TS + Puppeteer。有没有人有同样的问题或可能的解决方案\建议?我试着实现了这个:link,但是没有成功。

jest-重试对我不起作用,因为我创建了用户并做了很多操作,如果测试失败-重试使用相同的cookie在相同的铬标签中重新启动测试等。

代码示例:

代码语言:javascript
复制
const it = require('jest-retries');

describe('any tests', () => {

beforeEach(async () => {
    await page.emulate(devices['Galaxy S5']);
    await page.goto(newSearchUrl, { waitUntil: 'networkidle2' });

});

it('dummy test', 2, async () => {
    await userSignup(); // custom wrapper for signup
    await checkGraphqlSuccess('success dumb event');
    const iconHeader = await waitForElementVisible(favoriteBtnHeader);
    await iconHeader.click();
    const number = await waitForElementVisible(number1);
    const getNumber1 = await page.evaluate(obj => {
        return obj.getAttribute('data-id');
    }, number);
    expect(azaza1).toEqual(getNumber1);
});

afterAll(async () => {
    dumpEvents(fileName);
});
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-02-09 02:05:18

你有没有试过安装jest-circus?

使用此测试运行器,您可以执行以下操作:

代码语言:javascript
复制
//my_perfect_test.js
jest.retryTimes(3) //set maximum retries number

describe('Test', () => {
    test('Test_Test', async () => {
        //test code
        ...
        })
})

最大限度地减少测试的碎片性。

票数 9
EN

Stack Overflow用户

发布于 2021-07-14 21:45:43

Jest v27开始,jest-circus现在是默认的测试运行程序。所以above solution不需要额外的配置就可以工作。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59413521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档