cy.request最简单的用例不起作用

时间:2019-04-29 21:59:41

标签: cypress

我有以下代码:

    cy.server();
    cy.route({
        method: 'GET',
        url: 'http://localhost:4200/api/login',
        response:{sadasda:2312312123}})
    cy.visit('http://localhost:4200/');
    cy.request('GET', '/api/login');

但是cy.request抛出404错误。请看下面的截图。我在做什么错了?


enter image description here

1 个答案:

答案 0 :(得分:1)

来自docs for cy.request

  

cy.request()不能用于调试cy.server()和cy.route()

     

cy.request()将请求发送到实际端点,而绕过使用cy.route()定义的请求

     

cy.request()的目的是用于在实际运行的服务器上检查端点,而不必启动前端应用程序。

cy.route()用于测试您的应用程序,而不是测试cy.request()。尝试像这样从您的应用程序中生成一个与cy.route()匹配的XmlHttpRequest,它将起作用:

const xhr = new XmlHttpRequest()
xhr.open('GET', 'http://localhost:4200/api/login', false)
xhr.send() // now your `cy.route` will trigger