Mapa mental
Test-Driven Development
Conteúdo do mapa
Test-Driven Development
Why?
- $607b in 2020 for bugs in US
- Cost 100x in maintenance phase
- incremental specification
- developer discipline
- regression errors
How?
- Verification
- Dynamic Verification (Testing)
- Try to make system fail
- Executing in runtime environment for expected behavior
- Testing levels: unit, integration, system, acceptance, regression
- Stages
- Outside org
- Beta, product release
- Within org
- developers', alpha
- Outside org
- Techniques
- opaque box
- clear box
- Static Verification
- Examine w/o executing
- Performed asap
- DNR runtime env or compilation
- Inspections/Reviews/Walkthroughs
- Human-intensive
- Group-based, manual
- formal checklist + moderator, less formal + peers, informal + author
- Formal Verification
- math exhaustive
- checks code response to situation
- time consuming + expensive
- Dynamic Verification (Testing)
- Verification
What?
- test written before class
- write test code, functional code, refactor
- Refactoring
- What?
- Improve design
- Preserve functionality
- Why?
- Requirements change
- Improve design
- programmer sloppiness
- flexibility
- Types
- Collapse heirarchy
- Extract method
- Consolidate conditional
- Decompose conditional
- Extract class
- When?
- Adding a feature
- code review
- fixing a bug
- not when code is broken
- not close to deadline
- not without reason
- Tools
- Built into many IDEs
- How to find problem?
- Code Smells
- What?
- quick to spot
- indication of bigger problem
- From Where?
- rushed design
- technical debt
- right way vs fast way
- Types
- Bloaters
- Large class
- Long method
- Data clumps
- Long param list
- OO Abusers
- Switch statements
- Refused bequest
- Change Preventers
- Shotgun surgery
- Divergent change
- Dispensables
- Duplicated code
- Lazy class
- Data class
- Couplers
- Feature envy
- Inapprorpiate Intimacy
- Middleman
- Bloaters
- What?
- Code Smells
- What?
- Refactoring
- Red, green, refactor
- make it fail, make it work, make it better
Informações
- Descrição
- Mapa Mental sobre Test-Driven Development, criado por Rapid Fire em 01-08-2024.
- Criado por
- Rapid Fire
- Visualizações
- 0
- Avaliação