我正在为我的安卓项目创建一个Xamarin.UITest
。我在跟着Microsoft guide走。直到最后一点,一切都很正常:
将UITest项目中的项目引用添加到Xamarin.Android项目:
这将允许NUnitTestAdapter从Visual Studio为安卓应用程序运行UITests。
只要我添加一个对Android项目的引用,它就会给出以下错误:
NU1201: Project uitest.Android与net461 (.NETFramework、Version=v4.6.1)不兼容。Project uitest.Android支持: monoandroid81 (MonoAndroid、Version=v8.1)
这很有道理,因为显然.Net Framework 4.6.1
库对MonoAndroid一无所知。
我也尝试过将其转换为.Net Standard 2.0
,但得到了类似的错误:
错误NU1201项目uitest.Android与netstandard2.0 (.NETStandard、Version=v2.0)不兼容。Project uitest.Android支持: monoandroid81 (MonoAndroid、Version=v8.1)
奇怪的是,尽管有这些错误,项目仍然在构建。但是这些错误使我的自动构建nuget恢复失败,并显示完全相同的错误。
UI测试引用Android项目的原因是为了让Xamarin Test Cloud
能够调用:
if (platform == Platform.Android)
{
return ConfigureApp.Android.StartApp();
}
return ConfigureApp.iOS.StartApp();
您不能在Xamarin测试云中使用InstalledApp
或ApkFile
方法
我是不是误解了什么,或者这是一个visual studio / Xamarin错误?
PS。我使用的是最新的Visual Studio版本VS 15.8.0
发布于 2018-08-16 17:30:32
您通常不会在UI-test项目中引用Android项目。这样做的原因是:
我是这样使用apk的:
[TestFixture]
public class DroidTest
{
const string _droidPath = "../../APK/my-app.apk";
IApp _app;
[TestFixtureSetUp]
public void Setup()
{
_app = ConfigureApp.Android.ApkFile(_droidPath).StartApp();
}
}
如果您在Android项目中进行了更改,请构建并创建一个新的apk。之后,重新运行您的测试。
https://stackoverflow.com/questions/51862395
复制相似问题