Arquivo command.js
Cypress.Commands.add('login', (nome, senha ) => {
cy.get('[data-test="loginUserName"]').type(nome);
cy.get('[data-test="loginPassword"]').type(senha);
cy.contains('button', 'login').click();
cy.contains('a', '(Logout)').should('be.visible');
})
Arquivo login.incorreto.cy.js
describe('Login Page', () => {
beforeEach(() => {
cy.visit('https://3076-cypress-alurapic-front.vercel.app/#/home');
cy.intercept('POST', 'https://alurapic-api.onrender.com/user/login', {
statusCode: 400
}).as('stubPost');
})
it('Verifica mensagens de campos obrigatórios na página de login', () => {
cy.contains('User name is required!').should('be.visible');
cy.contains('Password is required!').should('be.visible');
})
it('Deve falhar mesmo que os campos sejam preenchidos corretamente', () => {
cy.login('catarinap', 'catarina123')
cy.await('@stubPost')
})
})
Sim, estou usando o usuário e senha dela porque simplesmente funciona.
Está dando erro no teste, dizendo que cy.await is not a function. Pra funcionar eu tive que alterar a função de login removendo a linha
cy.contains('a', '(Logout)').should('be.visible');
É isso mesmo?