我正在尝试为我的跨平台(Android / iOS / UWP)Xamarin C#项目创建一些单元测试。我对该应用程序的UWP版本的目标是Windows Surface平板电脑。这就是我所做的。
在NuGet包管理器中,选择xunit v2.2.0并单击“安装”。收到此错误:
无法安装包'xunit.assert 2.2.0'。您正在尝试将此软件包安装到以“.NETPortable,Version = v4.5,Profile = Profile259”为目标的项目中,但该软件包不包含与该框架兼容的任何程序集引用或内容文件。有关更多信息,请与软件包作者联系。
检查我的项目的属性,看它有很多目标:.NET Framework 4.5,ASP.NET Core 1.0,Windows 8,Windows Phone 3.1,Windows Phone Silverlight 8,Xamarin.Android,Xamarin .iOS,Xamarin.iOS(Classic)和Xamarin.Mac。点击“更改”按钮。
取消选中Xamarin.Mac,.NET Framework 4.5和ASP.NET Core 1.0。添加对Windows Universal 10.0的检查。单击确定。得到错误:
项目的目标无法更改。所选目标要求项目选择加入NuGet 3.0支持,但Visual Studio无法自动为您执行此操作。请卸载所有NuGet软件包,然后重试。
好的,回到NuGet Package Manager,卸载Xamarin.Forms。
获取新错误:
无法安装软件包'System.Runtime.InteropServices.RuntimeInformation 4.0.0'。您正在尝试将此软件包安装到以“.NETPortable,Version = v4.6,Profile = Profile44”为目标的项目中,但该软件包不包含与该框架兼容的任何程序集引用或内容文件。有关更多信息,请与软件包作者联系。
回到主项目的属性,它仍然说它的目标是.NET Framework 4.5.1,而不是4.6。
那么我如何让xunit在Visual Studio 2017中使用Xamarin?
答案 0 :(得分:1)
一种解决方案(也许某人有更好的解决方案):安装xunit版本2.1.0而不是2.2.0。出于某种原因,它的效果更好。