如何在赛普拉斯中测试Growl成功/失败消息

时间:2020-09-21 23:11:57

标签: angular notifications cypress growl

在使用网站时,我们会使用咆哮声来通知用户成功/失败的方法之一,有没有办法针对这些目标并使用赛普拉斯验证数据/与之交互?

我抬头看着整个咆哮盒有一个选择器,然后它又回到了#ng-app

我做了一些挖掘,好像我们使用了一个模板:用于激活事件处理程序时显示咆哮的代码。这是模板代码,html会快速消失,我不确定如何冻结它,但是我已经通过图像快速抓取了代码。

模板:

template: '<div data-growl="container" class="alert growl" role="alert">'
            + '<div class="growl_icon">'
            + '<i data-growl="icon"></i>'
            + '</div>'
            + '<div class="growl_text"><button type="button" class="close" data-growl="dismiss"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button><div class="growl_title"> <span data-growl="title"></span></div><p data-growl="message" class="growl_message"></p><a href="#" data-growl="url"></a></div></div>'

下图显示了添加的HTML,可悲的是,随着通知的消失,此代码迅速消失了,我还没有找到保留它的方法(我有点菜鸟)。 / p>

我希望能够验证发出的咆哮声,并说出正确的消息,然后将其关闭。

这是HTML的图像,我再也找不到一个很好的方法来获取源代码,因为它在咆哮声触发时会动态添加,然后在咆哮声消失时被删除。

HTML for the Growl

我的规范代码不起作用。

it(`should verify growl, and close it`, () => {
        cy.get('#ng-app > :nth-child(38)').focus();
        cy.get('.growl_text > .growl_message').should('have.text', 'Priority saved.');
        cy.get('.growl_text > .close').click();
    });

这是低吼声,它覆盖在我的页面顶部。我们使用Angular,然后咆哮地做到这一点。 enter image description here

0 个答案:

没有答案