SlideShare uma empresa Scribd logo
Unleashing the power and
unfolding the beauty of Unit and
Integration Testing with Test
Containers.
~ Franck Nsabimana
Franck Nsabimana
Software Developer
REPLACE WITH
YOUR PHOTO
~ Understanding what
Testing is all about!
~ Why do we actually need this kind of
testing and why do many people hate
unit testing?
● Is there any Test
Design Goals ?
The goals we should have in mind
1. Catch the bug: For a fix
2. Expressive code: Test code & Source code
3. Execution Time: Optimization
● What about the
Do’s and Don’ts ?
Here is what you need to know:
1. Behavior vs Implementation
2. Database Access
3. Communication Protocol
4. Touching the filesystem
* Tests running in milliseconds
Test Containers to the
rescue and what they
bring onto the table,
More than what we think it is
The Typical evil programmer?
1. Ignoring failing tests
2. Delete failing tests
3. Comment the failing tests
4. What about deleting the assertions or
inverting the assertions results?
We enjoy catching evil
programmers:
No Room For Democracy!
SonarCloud as our FBI agent with only shots:
1. Code Coverage
2. Test reports
3. Code maintainability
Time’s up for Tips and Tricks for better unit and
integration tests
1. Code Smart: Follow principles
2. Reproduce the bug
3. Break the production code
4. Silent Tests: Breaking the laws
5. It may not be a bug
HAPPY CODING !

Mais conteúdo relacionado

Semelhante a Unleashing the power of Unit Testing - Franck Ninsabira.pdf

What is Unit Testing
What is Unit TestingWhat is Unit Testing
What is Unit Testing
Sadaaki Emura
 
Best pratice
Best praticeBest pratice
Best pratice
Eugenio Romano
 
Pitfalls of Test Automation
Pitfalls of Test AutomationPitfalls of Test Automation
Pitfalls of Test Automation
Reload! A/S
 
STM-UNIT-1.pptx
STM-UNIT-1.pptxSTM-UNIT-1.pptx
STM-UNIT-1.pptx
nischal55
 
Week 14 Unit Testing.pptx
Week 14  Unit Testing.pptxWeek 14  Unit Testing.pptx
Week 14 Unit Testing.pptx
mianshafa
 
Testing & should i do it
Testing & should i do itTesting & should i do it
Testing & should i do it
Martin Sykora
 
An Introduction to Unit Testing
An Introduction to Unit TestingAn Introduction to Unit Testing
An Introduction to Unit Testing
Sahar Nofal
 
An Introduction To Software Development - Test Driven Development, Part 1
An Introduction To Software Development - Test Driven Development, Part 1An Introduction To Software Development - Test Driven Development, Part 1
An Introduction To Software Development - Test Driven Development, Part 1
Blue Elephant Consulting
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
bhochhi
 
Fundamentals_of_testing.pdf
Fundamentals_of_testing.pdfFundamentals_of_testing.pdf
Fundamentals_of_testing.pdf
AndreeaDavid22
 
TxJS 2011
TxJS 2011TxJS 2011
TxJS 2011
Brian LeRoux
 
Manual testing interview question by INFOTECH
Manual testing interview question by INFOTECHManual testing interview question by INFOTECH
Manual testing interview question by INFOTECH
Pravinsinh
 
Tdd
TddTdd
Info manual testing questions
Info manual testing questionsInfo manual testing questions
Info manual testing questions
Sandeep
 
3104328 software-testing-interview-questions
3104328 software-testing-interview-questions3104328 software-testing-interview-questions
3104328 software-testing-interview-questions
Raghavendra Kudal
 
Five steps towards your testing dream
Five steps towards your testing dreamFive steps towards your testing dream
Five steps towards your testing dream
Lisa Gagarina
 
iOS Test-Driven Development
iOS Test-Driven DevelopmentiOS Test-Driven Development
iOS Test-Driven Development
Pablo Villar
 
Debugging
DebuggingDebugging
Debugging
Ajeng Savitri
 
Software Bugs A Software Architect Point Of View
Software Bugs    A Software Architect Point Of ViewSoftware Bugs    A Software Architect Point Of View
Software Bugs A Software Architect Point Of View
Shahzad
 
Debugging
DebuggingDebugging

Semelhante a Unleashing the power of Unit Testing - Franck Ninsabira.pdf (20)

What is Unit Testing
What is Unit TestingWhat is Unit Testing
What is Unit Testing
 
Best pratice
Best praticeBest pratice
Best pratice
 
Pitfalls of Test Automation
Pitfalls of Test AutomationPitfalls of Test Automation
Pitfalls of Test Automation
 
STM-UNIT-1.pptx
STM-UNIT-1.pptxSTM-UNIT-1.pptx
STM-UNIT-1.pptx
 
Week 14 Unit Testing.pptx
Week 14  Unit Testing.pptxWeek 14  Unit Testing.pptx
Week 14 Unit Testing.pptx
 
Testing & should i do it
Testing & should i do itTesting & should i do it
Testing & should i do it
 
An Introduction to Unit Testing
An Introduction to Unit TestingAn Introduction to Unit Testing
An Introduction to Unit Testing
 
An Introduction To Software Development - Test Driven Development, Part 1
An Introduction To Software Development - Test Driven Development, Part 1An Introduction To Software Development - Test Driven Development, Part 1
An Introduction To Software Development - Test Driven Development, Part 1
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Fundamentals_of_testing.pdf
Fundamentals_of_testing.pdfFundamentals_of_testing.pdf
Fundamentals_of_testing.pdf
 
TxJS 2011
TxJS 2011TxJS 2011
TxJS 2011
 
Manual testing interview question by INFOTECH
Manual testing interview question by INFOTECHManual testing interview question by INFOTECH
Manual testing interview question by INFOTECH
 
Tdd
TddTdd
Tdd
 
Info manual testing questions
Info manual testing questionsInfo manual testing questions
Info manual testing questions
 
3104328 software-testing-interview-questions
3104328 software-testing-interview-questions3104328 software-testing-interview-questions
3104328 software-testing-interview-questions
 
Five steps towards your testing dream
Five steps towards your testing dreamFive steps towards your testing dream
Five steps towards your testing dream
 
iOS Test-Driven Development
iOS Test-Driven DevelopmentiOS Test-Driven Development
iOS Test-Driven Development
 
Debugging
DebuggingDebugging
Debugging
 
Software Bugs A Software Architect Point Of View
Software Bugs    A Software Architect Point Of ViewSoftware Bugs    A Software Architect Point Of View
Software Bugs A Software Architect Point Of View
 
Debugging
DebuggingDebugging
Debugging
 

Mais de GDG Bujumbura

Web au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdfWeb au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdf
GDG Bujumbura
 
Transaction SQL - Jean Thierry.pptx
Transaction SQL - Jean Thierry.pptxTransaction SQL - Jean Thierry.pptx
Transaction SQL - Jean Thierry.pptx
GDG Bujumbura
 
Science-Fiction - The forgotten art of designing better technologies - Josue....
Science-Fiction - The forgotten art of designing better technologies - Josue....Science-Fiction - The forgotten art of designing better technologies - Josue....
Science-Fiction - The forgotten art of designing better technologies - Josue....
GDG Bujumbura
 
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...
GDG Bujumbura
 
LLMs for the “GPU-Poor” - Franck Nijimbere.pdf
LLMs for the “GPU-Poor” - Franck Nijimbere.pdfLLMs for the “GPU-Poor” - Franck Nijimbere.pdf
LLMs for the “GPU-Poor” - Franck Nijimbere.pdf
GDG Bujumbura
 
Les outils et compétences nécessaires pour le développement en remote - Ce...
Les outils et compétences nécessaires pour le développement en remote - Ce...Les outils et compétences nécessaires pour le développement en remote - Ce...
Les outils et compétences nécessaires pour le développement en remote - Ce...
GDG Bujumbura
 
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...
GDG Bujumbura
 
Google Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdfGoogle Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdf
GDG Bujumbura
 
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdfComment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
GDG Bujumbura
 
Web au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdfWeb au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdf
GDG Bujumbura
 
Senior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdf
Senior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdfSenior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdf
Senior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdf
GDG Bujumbura
 
Road map to DevOps engineering - Elie Sirius
Road map to DevOps engineering -  Elie SiriusRoad map to DevOps engineering -  Elie Sirius
Road map to DevOps engineering - Elie Sirius
GDG Bujumbura
 
How to be a self-taught programmer best practices - Edgar Eldy
How to be a self-taught programmer  best practices - Edgar EldyHow to be a self-taught programmer  best practices - Edgar Eldy
How to be a self-taught programmer best practices - Edgar Eldy
GDG Bujumbura
 
Women in Tech : The Community - Seilla Nkurunziza
Women in Tech : The Community - Seilla NkurunzizaWomen in Tech : The Community - Seilla Nkurunziza
Women in Tech : The Community - Seilla Nkurunziza
GDG Bujumbura
 
Android et Minimalisme - Thomas Ezan
Android et Minimalisme - Thomas EzanAndroid et Minimalisme - Thomas Ezan
Android et Minimalisme - Thomas Ezan
GDG Bujumbura
 

Mais de GDG Bujumbura (15)

Web au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdfWeb au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdf
 
Transaction SQL - Jean Thierry.pptx
Transaction SQL - Jean Thierry.pptxTransaction SQL - Jean Thierry.pptx
Transaction SQL - Jean Thierry.pptx
 
Science-Fiction - The forgotten art of designing better technologies - Josue....
Science-Fiction - The forgotten art of designing better technologies - Josue....Science-Fiction - The forgotten art of designing better technologies - Josue....
Science-Fiction - The forgotten art of designing better technologies - Josue....
 
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...
 
LLMs for the “GPU-Poor” - Franck Nijimbere.pdf
LLMs for the “GPU-Poor” - Franck Nijimbere.pdfLLMs for the “GPU-Poor” - Franck Nijimbere.pdf
LLMs for the “GPU-Poor” - Franck Nijimbere.pdf
 
Les outils et compétences nécessaires pour le développement en remote - Ce...
Les outils et compétences nécessaires pour le développement en remote - Ce...Les outils et compétences nécessaires pour le développement en remote - Ce...
Les outils et compétences nécessaires pour le développement en remote - Ce...
 
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...
 
Google Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdfGoogle Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdf
 
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdfComment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
Comment creer de Applicartions Desktop avec Javascript - Bejamin Kinyamba.pdf
 
Web au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdfWeb au logiciel desktop avec Tauri - Don Nermed.pdf
Web au logiciel desktop avec Tauri - Don Nermed.pdf
 
Senior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdf
Senior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdfSenior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdf
Senior Sebarundi @flutterfoward 2023 - Flutter Favorites.pdf
 
Road map to DevOps engineering - Elie Sirius
Road map to DevOps engineering -  Elie SiriusRoad map to DevOps engineering -  Elie Sirius
Road map to DevOps engineering - Elie Sirius
 
How to be a self-taught programmer best practices - Edgar Eldy
How to be a self-taught programmer  best practices - Edgar EldyHow to be a self-taught programmer  best practices - Edgar Eldy
How to be a self-taught programmer best practices - Edgar Eldy
 
Women in Tech : The Community - Seilla Nkurunziza
Women in Tech : The Community - Seilla NkurunzizaWomen in Tech : The Community - Seilla Nkurunziza
Women in Tech : The Community - Seilla Nkurunziza
 
Android et Minimalisme - Thomas Ezan
Android et Minimalisme - Thomas EzanAndroid et Minimalisme - Thomas Ezan
Android et Minimalisme - Thomas Ezan
 

Último

怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
rtunex8r
 
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
bseovas
 
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
3a0sd7z3
 
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
uehowe
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
ysasp1
 
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
k4ncd0z
 
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
uehowe
 
Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
Toptal Tech
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
Laura Szabó
 
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
fovkoyb
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
wolfsoftcompanyco
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
xjq03c34
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
hackersuli
 
Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?
Paul Walk
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
davidjhones387
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 
Design Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptxDesign Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptx
saathvikreddy2003
 
HijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process HollowingHijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process Hollowing
Donato Onofri
 
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
3a0sd7z3
 

Último (19)

怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
怎么办理(umiami毕业证书)美国迈阿密大学毕业证文凭证书实拍图原版一模一样
 
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
 
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
快速办理(新加坡SMU毕业证书)新加坡管理大学毕业证文凭证书一模一样
 
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
办理毕业证(NYU毕业证)纽约大学毕业证成绩单官方原版办理
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
 
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理一比一原版(USYD毕业证)悉尼大学毕业证如何办理
一比一原版(USYD毕业证)悉尼大学毕业证如何办理
 
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
 
Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
 
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
 
Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 
Design Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptxDesign Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptx
 
HijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process HollowingHijackLoader Evolution: Interactive Process Hollowing
HijackLoader Evolution: Interactive Process Hollowing
 
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
快速办理(Vic毕业证书)惠灵顿维多利亚大学毕业证完成信一模一样
 

Unleashing the power of Unit Testing - Franck Ninsabira.pdf

  • 1. Unleashing the power and unfolding the beauty of Unit and Integration Testing with Test Containers. ~ Franck Nsabimana Franck Nsabimana Software Developer REPLACE WITH YOUR PHOTO
  • 3. ~ Why do we actually need this kind of testing and why do many people hate unit testing?
  • 4. ● Is there any Test Design Goals ?
  • 5. The goals we should have in mind 1. Catch the bug: For a fix 2. Expressive code: Test code & Source code 3. Execution Time: Optimization
  • 6. ● What about the Do’s and Don’ts ?
  • 7. Here is what you need to know: 1. Behavior vs Implementation 2. Database Access 3. Communication Protocol 4. Touching the filesystem * Tests running in milliseconds
  • 8. Test Containers to the rescue and what they bring onto the table, More than what we think it is
  • 9. The Typical evil programmer? 1. Ignoring failing tests 2. Delete failing tests 3. Comment the failing tests 4. What about deleting the assertions or inverting the assertions results?
  • 10. We enjoy catching evil programmers: No Room For Democracy!
  • 11. SonarCloud as our FBI agent with only shots: 1. Code Coverage 2. Test reports 3. Code maintainability
  • 12. Time’s up for Tips and Tricks for better unit and integration tests 1. Code Smart: Follow principles 2. Reproduce the bug 3. Break the production code 4. Silent Tests: Breaking the laws 5. It may not be a bug