我正在使用Cypress运行测试,我发送了一封电子邮件到另一封,然后登录第二封电子邮件,看看电子邮件是否已发送。不幸的是,在下面代码的底部,Cypress中的网页变成了空白。你知道为什么吗?我能做些什么来弥补?
it('Send email', function () {
cy.visit('https://login.yahoo.com/?.src=ym&pspid=159600001&activity=mail-direct&.lang=en-GB&.intl=uk&.done=https%3A%2F%2Fuk.mail.yahoo.com%2Fd');
cy.get('.phone-no').type('//password here{enter}');
cy.get('.password').type('//password here{enter}');
Cypress.on('uncaught:exception', (err, runnable) => {
return false
})
cy.get('.e_dRA').eq(0).click();
Cypress.Commands.add('typeTab', (shiftKey, ctrlKey) => {
cy.focused().trigger('keydown', {
keyCode: 9,
which: 9,
shiftKey: shiftKey,
ctrlKey: ctrlKey
})
})
cy.get('.select-input').eq(1).type('//email here');
cy.get('[role="textbox"]').type('Hi Second Email, the weather will be 10oc plus in the following destinations - Regards, First Email');
cy.get('[title="Send this email"]').click();
cy.get('[data-test-id="primary-btn"]').click();
cy.get('._yb_1golm').click();
cy.get('[data-soa="Sign out of all"]').click();
cy.get('[data-redirect-params="pspid=[[pspid]]&activity=ybar-signin"]').click();
cy.get('.pure-button').eq(1).click();
//Crashes here
});
2条答案
按热度按时间i2loujxw1#
Cypress在社交登录方面有一些限制,如下所述git issue
如果要求是处理电子邮件,那么很少有像mailosaur这样的替代方案可以帮助您。还有一个npm插件-cypress-social-logins,它为一些提供商提供社交登录功能
neskvpey2#
我已经处理了很多网页崩溃时运行Cypress测试。我不知道你申请的具体情况,但我可以给你给予。这整个代码块在脆弱步骤之前应该有
cy.wait(int)
。我怀疑你的应用程序崩溃是因为Cypress移动得太快了。仅供参考cy.wait()
的单位是毫秒。以下是一些示例:
您可以将它们调整为不同的值。告诉我进展如何!