Tenho uma duvida sobre commands. ele é tipo function?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
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!