代码之家  ›  专栏  ›  技术社区  ›  JKennedy Ziyad Godil

引用Xamarin.Android项目的Xamarin UI测试抛出错误

  •  0
  • JKennedy Ziyad Godil  · 技术社区  · 8 年前

    我正在创建一个 Xamarin.UITest Microsoft guide . 一切都很好直到最后一点:

    将项目引用从UITest项目添加到Xamarin.Android 项目:

    enter image description here

    这将允许nunitestadapter为

    一旦我添加对Android项目的引用,就会出现以下错误:

    NU1201:项目uitest.Android与net461不兼容 (.NETFramework,版本=v4.6.1)。项目uitest.Android支持: monoandroid81(MonoAndroid,版本=v8.1)

    这很有道理,因为很明显 .Net Framework 4.6.1 图书馆对MonoAndroid一无所知。

    我也试过把它转换成 .Net Standard 2.0

    项目uitest.Android与不兼容 netstandard2.0(.NETStandard,版本=v2.0)。项目uitest.Android

    奇怪的是 尽管有错误,项目仍在生成。 这些错误使我的自动生成nuget还原失败,错误完全相同。

    UI测试引用Android项目的原因是 Xamarin Test Cloud 能够打电话:

        if (platform == Platform.Android)
        {
            return ConfigureApp.Android.StartApp();
        }
    
        return ConfigureApp.iOS.StartApp();
    

    InstalledApp ApkFile 香豆素试验云中的方法

    我是否误解了什么,或者这是一个visual studio/Xamarin错误?

    另外,我正在使用最新的Visual Studio版本 VS 15.8.0

    1 回复  |  直到 8 年前
        1
  •  1
  •   tequila slammer    8 年前

    通常不会在UI测试项目中引用Android项目。原因是:

    • 你可以测试一个只有apk或ipa的应用

    我正在使用这样的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。之后重新运行测试。