TESTES FUNCIONAIS AUTOMATIZADOS COM CYPRESS (Encontros Universitários da UFC, 2021)
Para validar um produto, que dentro do contexto de computação trata-se de um sistema de software, é necessário que haja uma série de testes com o intuito de verificar se o sistema em questão está funcionando corretamente. Esses testes variam desde testes unitários, testes de Application Programming Interface (API), testes de integração e testes funcionais. Neste cenário, durante um período do estágio, foram realizados testes funcionais, que são testes relacionados às funcionalidades do sistema de forma automatizada. Umas das ferramentas utilizadas foi o Cypress, disponível no NodeJS e muito prático, pois ele funciona através de arquivos de testes que devem ser gerados dentro da pasta “integration” nomeados como “.spec.js”. Porém, apesar da simplicidade, alguns passos precisam ser seguidos para configuração do ambiente. Primeiro, o comando “npm init” para iniciar um projeto node, posteriormente, “npm install cypress” para instalar as dependências necessárias e, por último, o Cypress precisa ser executado uma primeira vez para que a pasta “integration” seja criada juntamente com os demais arquivos. Todavia, ao tentar executar o Cypress sem a devida configuração inicial o comando pode ser bloqueado. Contudo, para que não haja erro, o arquivo “package.json” precisa ser editado na parte de scripts, adicionando na linha seguinte "cypress:open": "cypress open", permitindo que o Cypress possa ser executado sem erros com o comando “npm run cypress:open”. Uma vez que os arquivos foram criados, os testes já podem ser executados, iniciando o Cypress, que abre uma janela com opções para escolher quais testes executar e em qual navegador, com a possibilidade de usar os navegadores Chrome, Firefox, Edge e Electron. A experiência de utilizar a ferramenta foi bastante satisfatória por se tratar de uma ferramenta já disponível no NodeJS e proporcionou uma experiência maior para o aluno nas atividades de automação de testes.