LogoLogo
Site da {struct}Organização no GitlabOrganização no GithubGitbook no Github
Gitbook
Gitbook
  • Bem-Vindo à Wiki da {struct}
    • Guia Markdown
  • Gestão
    • Presidência
    • Administrativo-Financeiro
      • Pesquisa e Desenvolvimento (R&D)
      • Reembolso de membros
      • Cupons e Prêmios
    • Projetos
    • Marketing
    • Comercial
      • Funil de Vendas
      • Fazer Proposta
      • Inserir Projetos no Portal BJ
      • Interação com Clientes
    • Gestão de Pessoas
    • MEJ
    • Processo Seletivo
      • Processo Trainee
        • Guias Utilizados
        • Ferramentas
      • Readmissão de Membros
  • Execução
    • Git
      • Conceitos básicos
      • Utilização em projetos
      • Soluções para problemas comuns
    • Ruby on Rails
      • Instalação
      • Obtenção de licença Jetbrains
      • Bash de Ubuntu no Windows
      • Geradores Rails
    • Devise
    • Rspec e Factory Bot
      • Instalação Rspec
      • Testando Models
      • Instalação Factory Bot
      • Usando o Factory Bot
      • Testando Controllers
      • Testando Controllers Versionadas
      • Testes com Associatividade
      • Testando Devise
    • Front-end
      • HTML
      • CSS
      • React js
        • Instalação
        • Componentes
        • Estilizando
        • Hooks
        • Mais sobre
    • Flutter
    • Projetos
      • Cloudinary
      • Gerência de projetos
      • Finalização de Projetos
      • Gitlab
        • CI-CD
      • Integrações
        • Discord - GitHub
    • Técnicas de Programação Ágil
      • Scrum
      • Behavior Driven Design
      • Test-Driven Development
    • Dados Estruturados
    • Gamificação
      • Clockify
    • Mailer
    • Assinatura Digital de Documentos
Powered by GitBook
On this page
  • O que é testar?
  • Por que testar?
  • Por que Rspec?

Was this helpful?

  1. Execução

Rspec e Factory Bot

PreviousDeviseNextInstalação Rspec

Last updated 2 years ago

Was this helpful?

O que é testar?

Basicamente, não testamos uma aplicação sempre que estamos usando ela? Sim, no entanto, esses testes são demorados e, às vezes, temos que entregar algo de prontidão para um cliente. Nesse sentido, mesmo que verifiquemos a aplicação, podemos deixar alguns erros bem específicos passar sem que percebamos.

Por mais que testes a mão sejam importantes e válidos, não é sempre o ideal e acaba tomando muito do nosso tempo, então, nossa solução é automatizar nossos testes, pois isso acelera nosso fluxo de desenvolvimento, nos ajuda a identificar todos os tipos de erros e também faz com que possamos escrever códigos mais eficientes.

Ok, mas como esses testes são feitos? Basicamente, nós escrevemos um teste para um certo caso e esperamos que o resultado bata com o esperado. No caso do rails, com o rspec, podemos verificar nossos testes no terminal facilmente:

Nesse caso, percebemos que temos 17 exemplos de teste e 0 falhas. Caso tenha algo errado, como saberemos?

Nesse caso, temos um teste que está errado e a nossa ferramenta de teste além de nos alertar que tem algo errado, ainda nos mostra, exatamente, onde está e o que está inexato, assim, facilitando que possamos corrigir nossos problemas no código.

Por que testar?

Agora que sabemos o que é um teste, vem uma pergunta: 'Por que devemos testar?'

Principalmente, porque evita que fiquemos horas e horas testando tudo manualmente. Além disso, também é mais fácil, quando escrevemos testes, encontrar certos problemas e pensar em alguns cenários que não tínhamos pensado antes de começarmos a escrever os testes.

É claro que podemos escrever testes ruins ou esquecer certos cenários que devem ser adicionados na nossa aplicação, mas, durante o tempo que desenvolvemos uma aplicação, é possível que nós mesmos percebamos que certos testes devem ser modificados e/ou adicionados ou alguém da nossa equipe de desenvolvimento pode nos avisar.

Quando escrevemos testes, somos forçados a pensar nos problemas que nossa aplicação pode ter e, nesse sentido, precisaremos de testes mais abrangentes e melhores escritos para garantir que nada vá falhar.

Por fim, como resultados de testes teremos códigos mais bem escritos, menos trabalho, código mais eficiente e com menos problemas. Acho que é algo que vale a pena.

Por que Rspec?

Outrossim, é bem mais fácil usarmos o Rspec pois temos uma documentação muito extensa, uma comunidade bem ativa, livros e uma série de tutoriais que podem nos ajudar caso encontremos algum problema.

Além de todos os benefícios já citados, a gem Rspec não é só muito poderosa para escrever testes, mas também facilita muito para entendermos os testes, ou seja, teremos uma extrema facilidade para escrevermos testes e, caso alguém precise modificar, é bem fácil de entender os casos de testes também.

Assim sendo, nossa escolha pelo Rspec Rails não se dá apenas pela sua facilidade, elegância, capacidade de integração com outras ferramentas, mas também pelo seu uso no mercado, atualmente. Todos esses fatores, fazem com que o uso da gem Rspec seja de extrema importância para todos os desenvolvedores rails que desejam aprender rails a fundo.

Como podemos ver, segundo o site , o rspec é a ferramenta de teste mais utilizada em rails atualmente, nesse sentido, para quem desenvolve em rails é de extrema importância que essa ferramenta seja dominada, pois é com ela que estaremos tendo mais contato no seu cotidiano como programador e/ou como desenvolvedor de alguma empresa que trabalha com rails.

Além do mais, o Rspec facilita a integração com outras gems como a , por exemplo, então, é uma gem muito abrangente e útil para termos nas nossas aplicações.

The Ruby Toolbox
factory bot rails
Terminal
Terminal com um erro
The Ruby Toolbox