[Cypress] Stub a Post Request for Successful Form Submission with Cypress

In this lesson well stub a POST request and use Cypress commands to fill in and submit a form. We’ll wait for the submission to resolve and then assert that the new item was added to the list.

 

For example when we dealing with Form submition, we want to issue a new POST request and then check it should update number of todos.

 

    it.only('should post new todo to the backend', function () {
        // Serve the page
        cy.server();

        // Prepare a POST request
        cy.route({
            method: 'POST',
            url: '/api/todos',
            response: {id: 123, name: 'new todo', isComplete: false}
        }).as('save');

        // Call a custom command to load initial todos
        cy.seedAndVisit();

        // Enter a new todo
        cy.get('.new-todo')
            .type('new todo')
            .type('{enter}');

        // Wait network request to be finished
        cy.wait('@save');

        // Calculate the expected length of todos
        cy.get('.todo-list li')
            .should('have.length', 5);
    });

// command
Cypress.Commands.add('seedAndVisit', (seedData = 'fixture:todos') => {
  cy.server()
  cy.route('GET', '/api/todos', seedData).as('load')

  cy.visit('/')

  cy.wait('@load')
});

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值