A.9 LIMITAÇÕES DO ESTUDO
B.2.7 Teste de Alterar Dados Pessoais: Dois conjuntos de teste
B.2.7.2 Segundo Conjunto de Teste
Foi utilizado a senha válida para alterar as seguintes informações: (Nome = name e E-mail = email), onde foi esperado um retorno de sucesso, após receber o retorno de sucesso foi verificado se de fato as informações do usuário em questão foram voltadas conforme a base de dados da aplicação. Veja o Caso de Teste representado pelo Diagrama de Sequência 82 e a exemplificação do teste à seguir.
A Figura 85 representa o código necessário para implementar o teste Voltar Dados Pessoais que pode ser encontrado em: /E2E/cypress/integr-
ation/07-alterar-dados-pessoais.spec.js.
Figura 85: Código de Teste Cypress - Voltar Dados Pessoais
com base na Figura 85:
•A linha 70, foi declarado a função describe, a qual é utilizada para descrever o nome que representa de forma geral o conjunto de testes implementados à seguir;
•Da linha 71 à 77 foi declarado a função before, a qual é utilizada para definir uma rotina que será executada antes dos casos de testes it. Neste caso foi definido que:
1.Na linha 72 por meio do método cy.login, foi invocada a função exemplificada na Figura 60, a qual é utilizada para acessar a plataforma;
2.Na linha 73 por meio do método cy.get foi definido que o elemento com seletor: #dropdown deve ser capturado, e com o método .click() foi definido que deve realizar a ação de clique no elemento capturado, neste caso, a função para abrir o menu e exibir as opções será invocada;
3.Na linha 74 foi utilizado o método cy.wait(1000) foi definido para esperar 1 segundo antes de prosseguir com a próxima validação;
4.Na linha 75 por meio do método cy.get foi definido que o elemento com seletor: #settings deve ser capturado, e com o método .click() foi definido que deve realizar a ação de clique no elemento capturado, neste caso, a função para realizar o redirecionamento para a página Configurações será invocada;
5.Na linha 76 foi utilizado o método cy.wait(1000) foi definido para esperar 1 segundo antes de prosseguir com a próxima validação;
•Na linha 79 foi definido o primeiro caso de teste por meio da função it, denominada voltar usuário, tal teste consistiu em:
1.Na linha 80 por meio do método cy.get foi definido que o elemento com seletor: #name deve ser capturado, e com o método .clear foi definido que deve limpar/apagar o valor do campo em questão;
2.Na linha 81 por meio do método cy.get foi definido que o elemento com seletor: #name deve ser capturado, e com o método .type foi definido que o valor name deve ser inserido no elemento capturado;
3.Na linha 82 por meio do método cy.get foi definido que o elemento com seletor: #email deve ser capturado, e com o método .clear foi definido que deve limpar/apagar o valor do campo em questão;
4.Na linha 83 por meio do método cy.get foi definido que o elemento com seletor: #email deve ser capturado, e com o método .type foi definido que o valor email deve ser inserido no elemento capturado;
5.Na linha 84 por meio do método cy.get foi definido que o elemento com seletor: #password deve ser capturado, e com o método .type foi definido o que valor password deve ser inserido no elemento capturado;
6.Na linha 85 por meio do método cy.get foi definido que o elemento com seletor: #show-password deve ser capturado, e com o método .click() foi definido que deve realizar a ação de clique no elemento capturado, neste caso, será exibido a senha para o usuário;
7.Na linha 86 por meio do método cy.get foi definido que o elemento com seletor: #save-settings deve ser capturado, e com o método .click() foi definido que deve realizar a ação de clique no elemento capturado, neste caso, a função para salvar as informações do usuário será invocada;
8.Na linha 88 por meio do método cy.get, foi definido que o elemento com seletor: #text-alert deve ser capturado e com o método .should foi válidado que a mensagem do alerta deve conter o seguinte texto: "Dados pessoais alterados com sucesso!", uma vez que a senha do usuário é válida;
9.Na linha 89 foi utilizado o método cy.wait(3000) foi definido para esperar 3 segundos antes de prosseguir com a próxima ação;
Entrando em mais detalhes do segundo teste de Voltar Dados Pessoais, com base na Figura 84:
•Na linha 92 foi definido o segundo caso de teste por meio da função it, denominada Voltar alteração, tal teste consistiu em:
1.Na linha 94 foi enviado uma requisição direta para a API, passando o (email e password) do usuário por parâmetro e esperado uma objeto de error como retorno;
2.Nas linha 96 e 97 foi realizado a validação, onde o error deve ser um objeto que contém a seguinte mensagem "No such user found for email: novo email gerado pelo faker", uma vez que o E-mail do usuário foi alterado na aplicação;
3.Na linha 100 foi enviado uma requisição direta para a API, passando o (email e password) do usuário por parâmetro e esperado uma objeto user como retorno;
4.Na linha 101 foi realizado a validação, onde o user deve ser um objeto do usuário e foi verificado se o atributo user.name é igual ao atributo name, como esperado após realizar a alteração dos dados pessoais por meio da aplicação;
5.Na linha 102 foi realizado a validação, onde o user deve ser um objeto do usuário e foi verificado se o atributo user.email é igual ao atributo email, como esperado após realizar a alteração dos dados pessoais por meio da aplicação;
A Figura 86 representa a captura da interface do Cypress, que mostra o resultado do segundo conjunto de teste executado, onde foi realizado quatro validações.