当我的一个Jest测试失败时,我想存储一个屏幕截图,但仅当它失败时。
这里以我的测试代码为例,!passedafterEach中的部分不起作用。
describe('Page', () => {
it('should contain Text in the header', async () => {
// Arrange
const page = new Page(driver);
// Act
await page.open();
// Assert
expect(await page.getHeaderText()).toBe('Something');
});
afterEach(async () => {
if (!passed) takeScreenshot();
await driver.quit();
});
});
Run Code Online (Sandbox Code Playgroud)
使用茉莉花,我会做类似的事情:
var passed = jasmine.getEnv().currentSpec.results().passed();
Run Code Online (Sandbox Code Playgroud)
但是我找不到Jest的类似东西。也许还有另一种解决方案,例如对每个失败的期望进行截图?我尝试了一下try / catch,但是测试总是通过...
如果在afterEach中测试失败,如何与Jest核对?