C# 使用Prism进行Xamarin表单时出现nUnit测试问题
我正在尝试使用nUnit为Xamarin表单项目编写单元测试。但是当我调用方法C# 使用Prism进行Xamarin表单时出现nUnit测试问题,c#,unit-testing,xamarin.forms,nunit,prism,C#,Unit Testing,Xamarin.forms,Nunit,Prism,我正在尝试使用nUnit为Xamarin表单项目编写单元测试。但是当我调用方法时,等待vm.LoadExes()在视图模型中,我得到一个错误: 类型“BindableBase”是在未引用的程序集中定义的。必须添加对程序集“Prism,Version=6.2.0.0,Culture=neutral,PublicKeyToken=91a96d2a154366d8”的引用。” 方法被标记为internal,以便可以从单元测试项目访问它。您是否在单元测试项目中添加了对prism的引用?@KenTucke
时,等待vm.LoadExes()代码>在视图模型
中,我得到一个错误:
类型“BindableBase”是在未引用的程序集中定义的。必须添加对程序集“Prism,Version=6.2.0.0,Culture=neutral,PublicKeyToken=91a96d2a154366d8”的引用。”
方法被标记为internal
,以便可以从单元测试项目访问它。您是否在单元测试项目中添加了对prism的引用?@KenTucker是的。我已经将prism nuget包添加到项目中。JIC,是同一版本吗?@EvX什么是JIC?
public class ExesTests
{
private Mock<IExService> mockExService;
private Mock<INavigationService> mockNavigationService;
private Mock<IPageDialogService> mockPageDialogService;
[TestInitialize]
public void Setup()
{
mockExService = new Mock<IExService>();
var exes = new List<Ex>()
{
new Ex()
};
mockExService.Setup(o => o.GetExes().Result).Returns(exes);
}
[TestMethod]
public async Task GetExesTest()
{
var vm = new ExesPageViewModel(mockExService.Object,
mockNavigationService.Object, mockPageDialogService.Object);
await vm.LoadExes(); // Getting error here
//Assert here
}
}
internal async Task LoadExes()
{
//Do something
}