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
Online classes
R$ 0.00
- Unlimited classes
- Unlimited Forum
- Books and ebooks unlimited
- New classes unlimited
- Technical support
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:
-
Visão Geral do Processo:
- Codificação, teste e design estão intimamente entrelaçados no TDD.
- O processo envolve as seguintes etapas:
- Escrever um único teste de unidade descrevendo um aspecto do programa.
- Executar o teste (que inicialmente deve falhar porque a funcionalidade está ausente).
- Escrever o código mínimo possível para fazer o teste passar.
- Refatorar o código até que ele atenda aos critérios de simplicidade.
- Repetir, acumulando testes de unidade ao longo do tempo.
-
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.
-
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á
- Erros Individuais:
Aulas
-
Apresenta uma introdução ao Test-Driven Development (TDD) e os diversos motivos para aplicar este processo de desenvolvimento guiado por testes.
-
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.
-
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).
-
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.
-
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.
-
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.
-
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.
-
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.
-
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
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.
Platform
Depositions
Gilberto & Neusa
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!!Couple
Como funciona estudar na plataforma?
Conheça todos os recursos da plataforma, onde você vai ter muito mais que 500 aulas disponíveis. Conheça algumas perguntas e respostas dentro da nossa plataforma.
Classe do aluno
Esta é a classe que aluno acessa para assistir e praticar as aulas.
Uma interface fácil como o Youtube em todos os navegadores.
Após terminar a aula clique no botão para completar a aula.
Fórum do aluno
A comunidade pode acessar o fórum, pesquisar e colocar dúvidas.
O fórum possui muitas visualizações, questões e respostas.
Não deixe de participar
Acesso a comunidade exclusiva
Acesso a artigos, revistas, podcasts,
e empregos exclusivos
F.A.Q
Frequently asked Questions
-
What is ecode10.academy and plataforma.academy?
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.
-
What is your mission?
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. -
Is the platform subscription?
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.
-
What is included inside the platform ecode10.academy and plataforma.academy?
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. -
Where I can watch?
You can learn and be inspired anytime, anywhere, including your smartphone, tablet or personal computer. You can see your favorite classes from our apps.
-
Which academy video is for me?
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.
-
Does the subscription exist on the platform?
There is no longer a subscription on the platform. Now each course has its separate fee that needs to be paid only once.
-
How much does it cost to be part of ecode10.academy and plataforma.academy?
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.
-
What is the warranty period for ecode10.academy?
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.
-
Where can I report possible errors?
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.
-
What is the methodology used in the classes?
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?
-
Who is instructor?
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.
-
How to pay?
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.
-
How does support work?
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.
-
Does the platform provide certification?
Yes, we provide certification with QRCode.