Tenho uma duvida sobre commands. ele é tipo function?
Tenho uma duvida sobre commands. ele é tipo function?
Olá! Entendo sua dúvida, e você está no caminho certo. No Cypress, um comando personalizado, de fato, funciona de maneira semelhante a uma função.
Um comando personalizado é um recurso do Cypress que permite a reutilização de um bloco de código que se repete em diferentes testes, sem a necessidade de reescrevê-lo todas as vezes. Você pode pensar nele como uma função que você define uma vez e pode chamar várias vezes em diferentes partes do seu código de teste.
Por exemplo, no contexto da aula, foi criado um comando personalizado para o processo de login, que é um procedimento que provavelmente será necessário em vários testes. O comando foi definido da seguinte maneira:
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();
})
Neste caso, 'login' é o nome do comando personalizado, e (nome, senha)
são os parâmetros que a "função" recebe. O bloco de código dentro das chaves {...}
define o que o comando faz, que é preencher os campos de nome de usuário e senha e clicar no botão de login.
Depois de definido, você pode chamar este comando em qualquer parte do seu código de teste da seguinte maneira:
cy.login('catarinap', 'catarina123')
Espero ter ajudado e bons estudos!