Cardashift is thrilled to become a sponsor of the Haskell Foundation. This foundation is an independent, non-profit organization dedicated to broadening the adoption of Haskell, by supporting its…
Fala galerinha medonha, hoje resolvi postar algo que acho muito bacana, isso mesmo adonis com cypress, mas não é um simples cypress open , estamos falando de fazer um e2e e executar tudo na docker, sem ter que abrir um navegado para rodar os testes.
Tá mas qual a ideia , porque fazer assim se podemos rodar no navegador e ser feliz?
Bem a ideia vai alem de um simples teste , nos vamos usar o husky e rodar os testes antes de dar um push e para deixar mais interessante vamos rodar mais uma coisa, mas vamos ver na pratica :)
Vamos criar um projeto com adonis seguindo a doc fielmente
durante a instalação selecionamos para usar apenas como api e aplicamos o eslint para mantermos o padrão .
Apos isso vamos instalar o prettier, para usarmos futuramente
e vamos instalar o plugin dele para nosso eslint também
Agora vamos criar nosso .prettierrc claro você pode colocar a configuração que achar melhor, irei mostrar a que uso normalmente.
vamos também dar um tapa no nosso eslint .eslintrc.json, gosto de usar o eslint do airbnb sendo assim vamos instalado também
E nosso .eslintrc.json vai ficar assim.
Agora que ja enfeitamos vamos criar nosso Dockerfile
Nosso foco é mostrar como o teste funciona dessa forma, não irei focar na expliacação do Dockerfile.
Apos fazer isso vamos criar a pasta da magica.
Nessa pasta vamos criar a pasta cypress, o Dockerfile e colocar o wait-for-it , primeiro vamos criar nossa pasta do cypress.
Como vamos usar apenas os testes de forma bem objetivas vamos ter apenas a pasta integration, agora vamos criar nosso Dockerfile.
agora vamos criar nosso 1 teste para ver se nosso adonis deu o start no server e esta acessando a /.
na nossa pasta cypress/integration vamos criar o arquivo server-start.spec.js
nosso arquivo cypress.json ficara assim
dessa forma ele não ira gravar os testes, e não usaremos nem um plugin.
para rodar a 1x basta usar o comando
e prontinho temos nossa base adonis com cypress para teste e2e rodando na docker, para deixar mais interessante podemos fazer algumas modificações em no package.json
agora vamos adicionar as seguintes linhas em nosso package.json
dessa forma sempre que alterar algum .ts ele roda o lint
link do projeto no git
Gostou do artigo deixa suas duvidas e comentários :)
In modern relationships, the word ‘love’ is used too much and often incorrectly. Saying these three words is not the only thing that is important — you should actually mean what you say. Sometimes we…
Es gracioso analizar el futuro porque te das cuenta que significa algo diferente para cada persona y cada quién piensa de el a su manera. Estoy segura de que muchos de mis compañeros escribirán…
BXT is open for trading on LATOKEN! Trading for BXT/ETH and BXT/LA trading pairs is now live. TRADE NOW. Latoken users can begin trading BXT and LA on the website at Latoken.com. To deposit and trade…