我有一个问题与柏树测试。我有这样的测试
const deeplinkUrl = 'https://deeplink.page.link/2WmRA4zbfUcQz5AY9';
describe('upload scan view', () => {
beforeEach(() => {
cy.visit('/deplinkPage');
cy.injectAxe();
});
it('should redirect user to deep link', () => {
cy.waitForLoaderRemoval();
cy.getEnabledButton('Install for Free');
cy.get('body').compareSnapshot('upload-scan-view');
cy.get('button').contains('Install for Free').trigger('click');
cy.url().should('be.equals', deeplinkUrl);
});
});
字符串
我有问题,每次我点击按钮与deeplink
。我的测试失败,因为柏树等待页面加载,每次检查网址有不同的网址,因为deepllink
有重定向到应用程序商店或它会重定向到应用程序与完全不同的网址。因为页面加载事件后,有不同的链接,我需要检查,点击按钮后,用户的网址是我的deeplink
,单击后会在那里停留一段时间
2条答案
按热度按时间p1tboqfb1#
你能截获其中的联系吗?
只要你正在测试的应用程序向
deeplinkUrl
发出请求,这就应该起作用。字符串
添加
req.destroy()
将阻止 * 重定向 * 的发生,如果它妨碍了你的测试。或者,如果你只是想 * 延迟 * 重定向,添加一个
setTimeout()
。型
n8ghc7c12#
您可以引入一个自定义命令,等待URL与您的深度链接匹配。下面是一个如何修改代码的示例:
字符串