Topicos Recents
-
Teste api - Validação de logs
Geral8 -
[Dúvida] Jira - Plugin para Gerenciamento de Teste
Geral3 -
Promoção na Escola Talking About Testing
Feed de Blogs e Posts2 -
Indicações de empresas (in company) - Cursos
Treinamento e Eventos4 -
JavaScript Tutorial Creating a CounterString tool in Chrome Browser Dev Tools Snippets
Feed de Blogs e Posts1 -
QA - Specialist (São Paulo)
Vagas1 -
Teste de software e método ágil.
Geral4 -
Dívida Técnica de Teste de Software
Geral2 -
QA Sênior @ Carenet Longevity (São Paulo)
Vagas1 -
Bate-papo sobre DevOps – Grupo de mentoria Talking About Testing
Feed de Blogs e Posts1 -
What is the best fuzzer (automated software testing tool) to find 0-days? Why? Quora Answer
Feed de Blogs e Posts1 -
Tarek - Load testing web services at Mozilla with Molotov | Agile Testers Conference 2018
Treinamento e Eventos1 -
Hacking JavaScript Games - Accessing private javascript variables at runtime via debugging
Feed de Blogs e Posts1 -
Talking About Testing & Patas Dadas
Feed de Blogs e Posts1 -
Agile Testers 2019 News
Geral4 -
Escreva código uma só vez
Feed de Blogs e Posts1 -
Automated tests in a CD/CI pipeline
Feed de Blogs e Posts1 -
How to Practice your JavaScript, Software Testing and Test Automation
Feed de Blogs e Posts1 -
How to Pretty Print JSON using Browser Dev Tools
Feed de Blogs e Posts1 -
How to bypass no paste controls on a web form
Feed de Blogs e Posts1
Teste de unidade para aplicação em Node.js
-
Olá Pessoal.
Acredito que essa seja o meu primeiro post.
No momento, estou participando de um projeto em Node.js e gostaria de criar testes de unidade em Node.js. Pelo que andei pesquisando existem diversas maneiras de se fazer, bem como, tecnologias também, como jasmine, mocha e por aí vai.
Vocês que são da área a mais tempo, o que vocês tem utilizado em seus projetos?
Desde já agradeço a ajuda e sucesso a todos!
-
Cara, to começando a me aventurar pelo mundo JS agora também. Tenho quase certeza de que o que tenho aplicado aqui não é a melhor solução para mim e a plena certeza de que não será a melhor para você, rs
Mas como estou fazendo isso em 3 projetos distintos em cada um estou procurando usar uma abordagem diferente para aprender na prática com os problemas que vão surgindo.Por hora estou experimentando rodar os unitários usando o karma como TestRunner e a combinação do Mocha + Chai (Asserções e Mocks), teste de integração pra validar APIs em Express usando Ava + Supertest e testes End to End eu to usando CasperJS.
Como disse, estou fazendo estas experiências por ter uma liberdade de aplicá-las na prática e com certeza é um grande aprendizado, mas eu te recomendo dar uma boa olhada no Jest (https://facebook.github.io/jest/), até agora me parece ser a ferramenta mais completa, de simples implementação e por ter uma empresa grande por trás, não vão abandonar ela quando o hype passar… rs
-
@DiogoMiranda , as ferramentas que o @Diego-Santos tá usando são ótimas, eu já trabalhei com elas e curti muito (Karma, Mocha, Chai). Ava e Jest são mais recentes, mas participo de grupos de JS no Telegram e já vi muita gente falando bem delas.
A única que eu não recomendo usar é o CasperJS. Já usei no passado, mas hoje não é mais necessário. O próprio Chrome já está com suporte a modo headless, e usar Xvfb também é uma boa alternativa pra rodar os testes em modo headless usando browsers reais.
Em 2014, quando comecei a mexer com PhantomJS, CasperJS, etc, os resultados entre Chrome e PhantomJS eram muito parecidos, então usar PhantomJS te dava uma confiança maior. Isso acontecia porque o Chrome, até 2013, usava a mesma engine do PhantomJS (Webkit), mas com o tempo, com as atualizações do Chrome e com o próprio release 2.0 do PhantomJS, vc obtinha resultados muito diferentes, sem falar dos problemas de estabilidade e de rapidez (o Chrome se comportava tão rápido quanto).
Inclusive, há uns meses atrás, teve uma thread de e-mail de um dos devs do PhantomJS abandonando o projeto e recomendando a usar o Chrome headless https://groups.google.com/forum/#!topic/phantomjs/9aI5d-LDuNE
-
@diego-santos eu to tendo experiência utilizando o Jest e vem sendo um framework muito legal de se trabalhar e por ser o facebook que mantém, eu acredito que vai ficar cada vez melhor! Junto com o Jest, para a camada de cima, eu to usando uma lib chamada Nighmare (http://codecept.io/nightmare/) para usar o motor do selenium. Vale a pena! é muito fixe
-
@Diego-Santos e @stefanteixeira, primeiramente agradeço pelo retorno. Sobre o ideal, realmente está cada mais difícil de se saber. Afinal, de tempinho em tempinho aparece uma tecnologia nova a se trabalhar. Como estou iniciando nessa jornada em Node.js, acredito que consigo pegar essa combinação de Mocha + Chai (Asserções e Mocks) para realizar os meus testes de unidade. Sobre os End to End já fiz uns projetos utilizando Protractor.js tanto para Angular.js quanto para Aplicações “Post-Back”. Achei sensacional essa tecnologia!
No mais agradeço pelo retorno e bora botar essa “p…” pra rodar. Um grande abraço.
-
@stefanteixeira Sabe dizer se esse modo headless do Chrome pode ser usado com o Selenium WebDriver?
-
@andrethiago opa, creio que seja só passar o argumento
headless
pro ChromeOptions. Dá uma olhada nesse post e depois diz se funcionou https://intoli.com/blog/running-selenium-with-headless-chrome/Não esqueça de atualizar o chromedriver pra versão mais recente, assim como usar a versão mais recente do Chrome.
-
@diogomiranda valeu! E quando precisar de mocks/stubs/spies, vai de Sinon.js, que é a melhor lib em JS pra isso, de longe.
-
@stefanteixeira Valeu! Tava usando o HtmlUnitDriver pra isso. Vou tentar com o Chrome.
-
@stefanteixeira, obrigado! Com certeza irei estudar também. Afinal, testes está na veia.
-
Quero aproveitar também para deixar em post um link sobre dev. orientado a testes… em node.js: