Here’s a simple guide to avoid new bugs when working with existing code:
1. Use Version Control
- Create a new branch (e.g.,
git checkout -b fix/login-bug
) before making changes. - This keeps the main code safe while you test your fixes.
2. Understand the Code First
- Read the code carefully. Ask: What does this do? Why was it written this way?
- Add comments or notes if parts are unclear (but don’t change anything yet).
3. Write Tests First
- If tests already exist, run them to confirm current behavior.
-
Write unit tests (e.g., with xUnit/NUnit) for the code you’re fixing. Example:
[Test] public void CalculateTotal_ValidInput_ReturnsCorrectValue() { var result = Calculator.CalculateTotal(100, 0.2); Assert.AreEqual(120, result); }
Tests act as a safety net to catch unintended side effects.
4. Make Small Changes
- Break big tasks into tiny steps (e.g., fix one bug at a time).
- Test after every small change to catch issues early.
5. Use Tools to Spot Problems
- Static analyzers (like Roslyn or ReSharper) highlight potential errors.
-
Enable warnings as errors in your project:
true
6. Refactor Safely
- Use your IDE’s tools (e.g., Visual Studio’s Rename or Extract Method) to avoid manual errors.
- Follow SOLID principles (e.g., split large classes into smaller ones).
7. Test Again After Changes
- Re-run all tests (old and new) to ensure nothing broke.
- Test manually if automated tests don’t cover everything.
8. Review Code with Your Team
- Ask a teammate to review your changes. Fresh eyes spot mistakes faster.
9. Update Documentation
- If your change affects how the code works, update comments, READMEs, or wikis.
10. Monitor After Deployment
- Use logging (e.g., Serilog) or monitoring tools (e.g., Application Insights) to catch issues in production.
Golden Rule:
Always ask, “Could this change break something else?”
Test early, test often, and keep changes small and clear. 🚀