TDD Java - Desenvolvimento Guiado por Testes

Desenvolvimento Guiado por Testes (TDD) é uma metodologia de desenvolvimento de software que enfatiza um ciclo iterativo em que a escrita de casos de teste precede a implementação real de funcionalidades ou funções. Aqui estão os principais aspectos do TDD

See more: Depositions | Course details | Questions

TDD Java - Desenvolvimento Guiado por Testes


180

Online classes

R$ 0.00

180
  • Unlimited classes
  • Unlimited Forum
  • Books and ebooks unlimited
  • New classes unlimited
  • Technical support

Native Apps published

All apps can be used locally without internet.
Applications are free to download, you only need to pay once to attend classes.
Classes can be viewed on iPad, iPhone and MacBook devices.



Descrição:

Desenvolvimento Guiado por Testes (TDD) é uma metodologia de desenvolvimento de software que enfatiza um ciclo iterativo em que a escrita de casos de teste precede a implementação real de funcionalidades ou funções. Aqui estão os principais aspectos do TDD:

  1. Visão Geral do Processo:

    • Codificação, teste e design estão intimamente entrelaçados no TDD.
    • O processo envolve as seguintes etapas:
      1. Escrever um único teste de unidade descrevendo um aspecto do programa.
      2. Executar o teste (que inicialmente deve falhar porque a funcionalidade está ausente).
      3. Escrever o código mínimo possível para fazer o teste passar.
      4. Refatorar o código até que ele atenda aos critérios de simplicidade.
      5. Repetir, acumulando testes de unidade ao longo do tempo.
  2. Benefícios:

    • Redução das taxas de defeitos: Muitas equipes relatam reduções significativas em defeitos, mesmo que haja um aumento moderado no esforço inicial de desenvolvimento.
    • Melhoria das qualidades de design: O TDD frequentemente leva a uma melhor qualidade interna, como maior coesão e menor acoplamento no código.
  3. Pitfalls Comuns:

    • Erros Individuais:
      • Esquecer de executar testes com frequência.
      • Escrever muitos testes de uma vez.
      • Criar testes excessivamente triviais ou omitir asserções.
      • Escrever testes para código trivial (por exemplo, acessadores).
    • Pitfalls da Equipe:
      • Adoção parcial: Quando apenas alguns desenvolvedores da equipe praticam TDD.
      • **Má

Aulas

  1. Apresenta uma introdução ao Test-Driven Development (TDD) e os diversos motivos para aplicar este processo de desenvolvimento guiado por testes.

  2. Apresenta a ferramenta JUnit para implementação de testes na plataforma Java, demonstra suas características, estrutura e alguns benefícios da versão 5. Mostra como criar um projeto Java no NetBeans 11, utilizando o Maven como ferramenta de build e gerenciamento de dependências.

  3. Mostra na prática como utilizar o JUnit 5 para implementar um algoritmo de Máximo Divisor Comum (MDC) com Java no NetBeans 11, seguindo o processo de Test-Driven Development (TDD).

  4. Mostra na prática como utilizar o JUnit 5 para implementar um algoritmo de Máximo Divisor Comum (MDC) com Java no NetBeans 11, seguindo o processo de Test-Driven Development (TDD). Continua a implementação das propriedades básicas do MDC.

  5. Os vídeos anteriores mostraram como encontrar o MDC de dois números implementando propriedades do MDC, que indicam qual o resultado a ser retornado quando os valores de entrada atendem determinadas pré-condições. Nestes casos, não fizemos de fato nenhum cálculo. Para os casos em que os valores não se enquadram em tais propriedades, precisamos então implementar um algoritmo que de fato calcula o MDC. Este vídeo mostra a implementação seguindo o processo de Test-Driven Development (TDD) com JUnit 5 no NetBeans 11.

  6. Continuando a série de TDD, este vídeo mostra um projeto mais realista para a implementação de testes unitários e regras de negócio para um sistema bancário, seguindo o processo de Test-Driven Development. É disponibilizado um projeto Java com uma estrutura inicial. Aqui utilizo o Visual Studio Code, mas qualquer IDE pra Java tem suporte ao JUnit. O vídeo mostra como escrever testes que precisam instanciar objetos, definir valores iniciais e chamar diferentes métodos para verificar o resultado esperado. Alguns recursos adicionais do JUnit são mostrados, como mais detalhes sobre exceções no JUnit 5 e as asserções assertNotEquals e assertNotNull.

  7. Continuando a implementação do sistema bancário seguindo o desenvolvimento guiado por testes (TDD), este vídeo mostra como resolver um dos problemas de testes intermitentes (que passam ou falham com difetentes valores, mesmo quando deveriam sempre passar) com JUnit 5, utilizando um delta no assertEquals. São explicados os motivos para essas falhas, para podermos entender adequadamente o problema e definir valores adequados para o delta e evitarmos dores de cabeça para encontrar e resolver testes intermitentes.

  8. Apresenta os fundamentos da cobertura de código, que indica o percentual do código fonte que está sendo coberto pelos testes automatizados. Mostra como aplicar cobertura de código no JDK, especificamente em projetos Java com a biblioteca JaCoCo. Mostra como analisar a cobertura de código e detalhes a serem considerados. Utiliza um sistema bancário como projeto de exemplo que possui testes unitários com o JUnit 5.

  9. Apresenta uma breve introdução do que são os processos de Integração Contínua (Continuous Integration, CI) e Implantação Contínua (Continuous Deployment, CD). Mostra como habilitar o GitHub Actions como serviço de CI para build e execução automatizada dos testes em um projeto Maven com Java. Por fim, apresenta o https://shields.io que facilita adição de badges (shields), aqueles botões com informações sobre o projeto no topo de muitos README.

Observação Tivemos um problema com o áudio em algumas aulas, estamos trabalhando para regravar e arrumar os áudios das aulas afetadas

Autor: Manoel Campos 🧑‍💻 Instragram: https://instagram.com/manoelcampos Linkedin: https://linkedin.com/in/manoelcampos Google Reads: https://goodreads.com/manoelcampos Clube House: https://clubhouse.com/@manoel.campos X: https://twitter.com/manoelcampos GitHub: https://github.com/manoelcampos Youtube: https://youtube.com/manoelcamposfh



180

About us

Depositions

“Melhor plataforma de estudos, assisto as aulas gravadas dentro da minha disponibilidade e posso revisar o conteúdo em aula online e individual, as aulas são didáticas e focadas no desenvolvimento prático do assunto abordado, eu recomendo os cursos para desenvolvedores e indico para quem está interessado em mudar de carreira de forma prática e ágil.”

Testemunho da Ana

Ana

Future developer

Mauricio, thank you for your classes.
That was very cool and interesting. You thought me a lot of things, which I can do now. You are cool teacher 😎👍

Sofiia

Olha Zaborska

Good student

My wife and I have been taking the "Finanças na Prática" course on plataforma.academy from Mauricio for about one month now and it has really opened up our eyes on our finances. We have already learned so much regarding High Yield Savings, Stocks, ETF’s. Reits, Dividends, etc. I really never looked into this in detail until now. Sometimes you just need a course where someone will explain how you can try to get ahead and the steps required. It is not simple and takes dedication but it can be done in time and with patience. We immediately started creating an emergency HYSA, and opened a Brokerage account for additional future income. We are already on the road to financial success thanks to the help from Mauricio and this course. Mauricio is calm & patient and explains everything in detail so anyone can understand the processes. Thank you Plataforma and Mauricio!! We will provide future updates. We highly recommend this course for anyone, no matter what age, to start investing in your financial freedom!! "Financial Success"

Gilberto & Neusa

Couple

Are you enjoying the HTML course?

Sofi: Yes, I really like it, at first it's very difficult because it's all for the first time for me, but step by step.

Sofiia

Sofiia

Master Degree in Economy

I have been taking a SQL class with Mauricio and I love how patient he is and how he started the with the very basic , explaining what a database is. This helps in understanding the process. Taking it slow and practicing with the honework he assigns will help me alot. Thank you Mauricio.

Gilbert

Gilbert

Training/Couch

Informações importantes, atividades práticas claras, explicações claras, descrição preciso do curso, apresentação cativante, instrutuor experiente.

Luís Antônio de Oliveira Santos

Gostei bastante do curso por ser um curso rapido e objetivo.

Lucas Maestro Carlos

Sou programador a 8 anos e ministrei aulas em ensino técnico por 4 anos.

O windows form não morreu mesmo, trabalho com essa tecnologia aqui na empresa e o curso me ajudou bastante.

Marcos

Developer

5 estrelas.

Gilmar Robledo

Muito bom, 5 estrelas.

William Souza dos Santos

O seu primeiro livro me ajudou a mudar de vida. Eu era do suporte e aprendi muito com o seu livro e vídeos. Agora posso ajudar minha família

Paulo

Dev

Muito bom o curso de C#, gostaria de aprender também VB.NET

Efraim Vieira

Dev

Parabéns pelas aulas, aprendi muito e gostei de fazer menu dinâmicos.

Luiz Farias

Dev

Aprendi muito com o curso de iPad. Obrigada!

Marcilene

Dona de casa

O curso de Api me deu outra visão em relação ao desenvolvimento de software.

Iuri

Freelancer

F.A.Q

Frequently asked Questions

  • ecode10.academy and plataforma.academy is an education platform that allows anyone to learn in a practical way, with technology experts, based on challenges and system development. All Academy content is available anytime and anywhere on your smartphone or personal computer. The platform has changed, now there is no more monthly fee.

  • To be the best professional education community on the market.
    We teach people a new professional skill in a practical way and using methodology.
    We believe that everyone can learn a new skill, especially in the area of technology, using technology to their advantage.

  • We do not have a subscription, each course has its own price and is paid only once. You only pay once to take the course you choose.

  • ecode10.academy and plataforma.academy has different types of content:

    Academy Video: the videos are classes on specific topics in the software development market, where you will have access to complete classes on various technology topic such as programming languages, software solutions and more. In addition, every video will be accompanied by exclusive support material to improve your learning even more.

    Academy Book: where current software market technologies teach how to most influence in book format, in practice and step by step.

    Academy Code: exclusive codes about a certain technology, with tips and day-to-day examples. This is only shown and tested by those who work in companies of software.

    Academy Podcast: podcasts talking about technology, development, personal career and software. The entire community now you only pay once.

  • You can learn and be inspired anytime, anywhere, including your smartphone, tablet or personal computer. You can see your favorite classes from our apps.

  • In the video academy you will find classes and learning paths to level your knowledge, and in this way we offer the best content for you. Each trail is designed to be accessible to people with little or no experience as well as advanced learners. With the regular release of new classes, you will always have the opportunity to learn something new.

  • There is no longer a subscription on the platform. Now each course has its separate fee that needs to be paid only once.

  • Each course has its value separately, paid only once. Yes, there is no more monthly fee within the platform. The course you choose will be the one that will be made available to you.

  • At ecode10.academy we are committed to our students. Thus, we offer a 7-day guarantee, from the date of payment of the course, for withdrawal and full refund of the amount paid by the subscriber.

  • You will be able to report possible errors within the contact page of the logged in area, via email and through the chat communicator we have.

  • I use the CBL (Challenge Based Learning) methodology #Challenge based on learning. Can you imagine learning something new based on problem solving? How to solve problems through a software? How to solve problems through a website? How to solve problems through a desktop service? How to solve problems through an api?

  • Mauricio Junior is the dedicated instructor, former university professor. PhD student in Biotechnology. Master in Electrical Engineering focused on Mobile. Postgraduate in indexing in information systems. Postgraduate in higher education. More than 26 books written. More than 600 articles published. Mobile developer. Web developer. Desktop developer. API developer.

  • Payment is made by Paypal (secure and accepts any type of credit card). Paid in the amount only once and can be canceled according to your will without any kind of cost.

  • We have support via Mytalk.chage Chat support on our page. We have support via email. We have support through the social network Instagram and Facebook. And if that's the case, we have support through Zoom, Google Meeting, Teams or another voice and video connection platform.

  • Yes, we provide certification with QRCode.