我正在使用puppeteer来完成一些自动化测试,但不知道如何测试navigator.share()函数在用户单击后是否正常运行。
3xiyfsfu1#
如果你想测试navigator.share()函数是否被调用,你可以在浏览器上下文中模拟它,并检查模拟函数是否在操作后被调用,如
navigator.share()
await page.evaluateOnNewDocument(() => { window['isNavigatorShareCalled'] = false; window.navigator.share = async (data) => { window['isNavigatorShareCalled'] = true; window['shareData'] = data; }; }); await page.goto(yourSite); await page.waitForSelector(trigger).then(el => el.click()); const isShareCalled = await page.evaluate(() => { return window['isNavigatorShareCalled']; }); expect(isShareCalled).toBe(true); // check data if needed
字符串如果你需要调用native share,你可以在mock中调用。
1条答案
按热度按时间3xiyfsfu1#
如果你想测试
navigator.share()
函数是否被调用,你可以在浏览器上下文中模拟它,并检查模拟函数是否在操作后被调用,如字符串
如果你需要调用native share,你可以在mock中调用。