首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xamarin UI测试:使用一个构建配置同时运行iOS和安卓测试

Xamarin UI测试:使用一个构建配置同时运行iOS和安卓测试
EN

Stack Overflow用户
提问于 2020-02-01 01:16:22
回答 1查看 221关注 0票数 0

所以,我在Mac上,使用Visual Studio和Xamarin UI Tests在一个真实的iphone和一个真实的android设备上运行ui测试。

我已经将classic测试夹具设置为安卓和IOS作为不同的测试变体。

代码语言:javascript
复制
    [TestFixture(Platform.Android)]
    [TestFixture(Platform.iOS)]
    public class Tests
    {
        IApp app;
        Platform platform;

        public Tests(Platform platform)
        {
            this.platform = platform;
        }

        [SetUp]
        public void BeforeEachTest()
        {
            app = AppInitializer.StartApp(platform);
        }
    }
}

这是我的设备应用配置,我在运行时在IDE中指定设备,而不是使用设备IDE:

代码语言:javascript
复制
 public static void StartApp()
        {

            if (Platform == Platform.Android)
            {
                _app = ConfigureApp
                    .Android
                    .InstalledApp(appBundleName)
                    .EnableLocalScreenshots()
                    .PreferIdeSettings()
                    .StartApp(AppDataMode.Clear);
            }

            if (Platform == Platform.iOS)
            {
                _app = ConfigureApp
                    .iOS

                    .InstalledApp(appBundleName)
                    .PreferIdeSettings()
                    .EnableLocalScreenshots()
                    .StartApp(AppDataMode.Clear);
            }
        }
    }

当我在单一平台上运行测试时,这是有效的--例如,注释掉IOS平台装置并只运行Android测试,反之亦然。但是,如果我有两个平台的文本fixture,并尝试运行所有测试,我就会遇到测试找不到其中一个设备的问题。比方说,发现android运行得很好,这些测试也像预期的那样运行,但所有ios测试都失败了。

我怀疑这与我的构建配置有关,因为首选IDE设置似乎依赖于构建配置来为应用程序设置目标设备。但是,我想检查一下--是否可以在IOS和ANDROID平台上使用“首选ide”设置运行测试?我已经在我的测试板中设置了测试应用程序,而且这两个应用程序似乎都是针对真实设备的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-01 05:13:46

我想出了我自己的问题,想把它贴出来,以防对其他人有用。

总之,无论出于什么原因,您都不能在两个平台上都使用.PreferIdeSettings()。Visual Studio Mac似乎只知道如何为每个目标设备的每个项目指定一个构建配置。也许如果其他人设置了一个项目,不同的应用程序将共享一个构建配置,这可以解决。实际上,我发现我必须至少指定一个平台的设备id,才能成功地对两个平台的目标设备进行测试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60008493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档