Я разрабатываю приложение Windows Phone 7 с использованием подхода MVVM с помощью Caliburn.Micro. Как проверить мои ViewModels? Все они выглядят так (упрощенно):Unit Testing Caliburn.Micro ViewModels
public class MainPageViewModel : PropertyChangedBase {
readonly INavigationService navigationService;
public MainPageViewModel(INavigationService navigationService) {
this.navigationService = navigationService;
}
}
INavigationService
определяется в сборке Caliburn.Micro и проблема заключается в том, что он наследует от INavigate
который определен в System.Windows (Windows Phone версии). Поэтому, когда я пытаюсь использовать такие ViewModels в тестовом проекте единичного я получаю следующую ошибку
типа «System.Windows.Controls.INavigate» определяются в сборке , не ссылаются. Вы должны добавить ссылку на сборку «System.Windows, Version = 2.0.5.0,
Когда я пытаюсь добавить Явно ссылку на System.Windows.dll, который используется в моем проекте WP7 я получаю. Добавлена версия NET (4.0.xx). Мои виртуальные машины определены в проекте WP7, я не могу переместить их в переносимую библиотеку классов, потому что Caliburn.Nicro пока не поддерживает PCL. Какие-либо предложения?
Не можете ли вы создать библиотеку классов WP7 для ваших модульных тестов? –
Похоже, я не могу добавить ссылку на Microsoft UniTesting Framework в проектах WP7. –
Ах. Пробовали ли вы использовать альтернативную модульную систему тестирования? –