Back-end Engineering
63 learners
Refactoring by Leveraging Tests with Java & JUnit
This course focuses on the Refactor step in TDD, teaching developers to spot code smells and resolve them through refactoring. Using real-world examples, you'll identify common issues, apply refactoring techniques, and ensure functionality is preserved with existing tests.
Java
JUnit
5 lessons
21 practices
3 hours
Computer Science Fundamentals
Lessons and practices
Refactor Duplicate Code in the Tests
Refactor Tests using Parameterization
Extract Function: calculateItemCost
Refactor Duplication between Calculate Functions
Refactor Magic Numbers to Constants
Extract User Validation
Extracting Validation into Validator Classes
Extract Data Normalization
Focusing on the Data Store
Streamline Parameters with a Parameter Object
Introduce a CoursePolicy Parameter Object
Re-order Parameters for Cohesion
Provide Defaults for Most Parameters
Extract StudentGrade Logic
Refactor: Move Method calculateFinalGrade
Getting rid of the GradeAnalyzer
Eliminate Feature Envy from the Student
Extract a CartItemCollection
Extract a PriceCalculator Class
Refactor ShoppingCart to Use DiscountCalculator Class
Write Tests for Extracted Classes
Meet Cosmo:
The smartest AI guide in the universe
Our built-in AI guide and tutor, Cosmo, prompts you with challenges that are built just for you and unblocks you when you get stuck.

Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal