Jestjs Jest-Storyshot-getCustomBrowser-如何管理?
有一个问题,我想使用一个自定义浏览器来进行带有笑话的故事快照,但我很难找到任何关于管理浏览器生命周期的示例或文档,这只是随便提到的。我的故事照是这样的Jestjs Jest-Storyshot-getCustomBrowser-如何管理?,jestjs,storybook,storyshots,Jestjs,Storybook,Storyshots,有一个问题,我想使用一个自定义浏览器来进行带有笑话的故事快照,但我很难找到任何关于管理浏览器生命周期的示例或文档,这只是随便提到的。我的故事照是这样的 initStoryshots({ suite: 'Image storyshots', storyKindRegex: /^((?!.*?skipImageSnapshot).)*$/, test: imageSnapshot({ storybookUrl, getMatchOptions, getCustom
initStoryshots({
suite: 'Image storyshots',
storyKindRegex: /^((?!.*?skipImageSnapshot).)*$/,
test: imageSnapshot({
storybookUrl,
getMatchOptions,
getCustomBrowser: async () => {
let browser = await puppeteer.launch({
args: [
'--no-sandbox ',
'--headless',
'--disable-setuid-sandbox',
'--disable-dev-shm-usage',
'--disable-lcd-text',
],
});
return browser
}
}),
});
因此,我不清楚我可以在哪里添加一个afterAll或其他方法来获取浏览器和.close()
它
希望能在这里找到一些指导。请让我知道我可以添加哪些详细信息 好的,解决了。在此处为下一个人留下记录: 解决方案是捕获由
imageSnapshot
返回的testFn,然后覆盖该上的
let browser;
let afterAll = () => {
if (browser) {
browser.close();
}
};
let testFn = imageSnapshot({
storybookUrl,
getMatchOptions,
getCustomBrowser: async () => {
browser = await puppeteer.launch({
args: [
'--no-sandbox ',
'--headless',
'--disable-setuid-sandbox',
'--disable-dev-shm-usage',
'--disable-lcd-text',
],
});
return browser;
},
});
testFn.afterAll = afterAll;
initStoryshots({
suite: 'Image storyshots',
storyKindRegex: /^((?!.*?skipImageSnapshot).)*$/,
test: testFn,
});