In this liveProject, you’ll refactor poorly written legacy code in a way that lets you make changes without fear of bugs. You’ll fix the internal structure of your code, make sure code functions according to your needs with integration tests, and make in-depth changes supported by your testing suite. Finally, you’ll develop new features inside code without major changes, and replace dependencies with mock objects to help test previously unmaintainable code.
This project is designed for learning purposes and is not a complete, production-ready application or solution.
This liveProject is for intermediate C# developers who want to improve their understanding of modern testing practices. No previous testing experience is required. To begin this liveProject, you will need to be familiar with:
- Intermediate C#
- Visual Studio: able to create new projects and install plug-ins
- ASP.NET and web development
- .NET desktop development
- .NET Core cross-platform development
- Basics of MongoDB
- Basics of Docker: able to run Docker and Docker Compose files from Visual Studio
- Basic YAML: able to read simple YAML files
- Basic REST and HTTP for creating web services
you will learn
In this liveProject, you’ll learn how to use well-written tests when refactoring and rewriting legacy code.
- Refactoring with Visual Studio
- Making improvements without changing code intent
- Integration tests to ensure code functions as intended
- Replacing problematic dependencies with fake objects