When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

WPF and MVVM: Test Driven Development of ViewModels
Testing your ViewModels while they're in development can help you create better apps. In this course, you'll learn how to use test-driven development (TDD) to build the ViewModels of your MVVM application.

This Course Includes
pluralsight
5 (160 reviews )
5 hour 22 minutes
english
Online - Self Paced
core courses
pluralsight
About WPF and MVVM: Test Driven Development of ViewModels
When applying the MVVM pattern, the UI-logic is placed in ViewModels. A key advantage of such a ViewModel is that it is highly testable. In this course, WPF and MVVM: Test Driven Development of ViewModels, you'll learn the specifics of unit testing within MVVM. You'll discover how to create and run unit tests in Visual Studio with the popular testing framework xUnit, and how to write testable ViewModels by moving out typical dependencies like data access logic, event aggregator, modal dialogs and more. Next, you'll be taught how to mock/fake these dependencies in your unit tests by using the mocking library, Moq, as well as inject the dependencies into your ViewModels with a dependency injection framework called Autofac while running your application. Finally, you'll build and unit-test the ViewModels for an MVVM app called FriendStorage from 'empty class' to final by using test-driven development. By the end of this course, you'll understand how to develop your ViewModels through testing in order to create better apps than ever.
What You Will Learn?
- Course Overview : 1min.
- Introduction : 23mins.
- Getting Started with Unit Testing : 46mins.
- Writing Testable ViewModels : 39mins.
- Mocking Dependencies with Moq : 15mins.
- Testing and Implementing the Loading of Friends : 58mins.
- Closing Tabs and Saving a Friend : 47mins.
- Adding a New Friend : 26mins.
- Deleting an Existing Friend : 32mins.
- Interacting with Dialogs in MVVM : 32mins.