我们最近开始使用 Cypress 通过 Angular 6 UI 进行 E2E 测试。事实证明它很棒,而且在我们看来,它比 Protractor 好用得多。
我们的计划是模拟与服务器的所有交互。对于使用 cy.route() 和固定装置的所有 REST/XHR 调用来说,这很容易。
但是,我们也使用网络套接字。事实证明,嘲笑与它的交互并不是那么容易。
从我目前所做的研究来看,我能找到的唯一建议是使用 cy.stub()。原则上这听起来不错,但我找不到任何详细说明,理想情况下有一些使用它来模拟网络套接字的例子。
我认为可能有效的另一种方法是使用 Angular 的 TestBed 服务。注入我们自己的服务来处理我们与 Web 套接字的交互。
但是,其中任何一条都是正确的路线吗?任何人都可以提供任何应该完成的最佳方式的例子吗?
任何让我朝着正确的方向前进以帮助我开始的指示将不胜感激。谢谢。