gpt4 book ai didi

ios - 将 Xcode 5 中的单个 XCTest 单元测试用例定位到通用应用程序的特定 iOS 设备?

转载 作者:技术小花猫 更新时间:2023-10-29 10:17:55 26 4
gpt4 key购买 nike

我正在构建一个通用的 iPhone/iPad 应用程序,并且 UI 在某些情况下明显不同(即在 iPhone 上我们使用带有 TableViews 的主/细节范例,而在 iPad 上我们使用带有包含的单元格的 CollectionView详情)。

因为接口(interface)如此不同,它改变了 View Controller 单元测试的构建方式。在 Collection View 中,我们必须进行测试以确保单元格构建正确并包含所有详细信息,而在 iPhone 上我们需要两组测试 - 一组用于主列表,另一组用于详细信息屏幕。

所以我的问题是,在使用 Xcode 5 和 XCTest 框架构建的通用应用程序中,您能否将单个单元测试用例/类定位为在特定物理设备上运行?

我在这里遇到了类似的问题 - iOS Unit testing universal application - 但提问者有不同的意图,并且使用的是旧技术。

我还看到了对 UserInterfaceIdiom 的各个测试函数进行检查的建议,但这似乎很粗糙。理想情况下,会有一个注释指定在特定设备上运行的特定测试,或者能够为特定设备指定整个测试类。

提前感谢您的建议。

--编辑--

@TommieC 引导我走上了一条看似合适的道路,如果是一本小手册的话。我创建了两个新的测试特定方案,一个用于手机大小的设备,一个用于平板电脑大小的设备。在这些方案中,我编辑了测试部分并添加了核心测试以及特定于设备的测试。

然后我让 jenkins 执行两个构建步骤,以适当的设备为目标来测试特定方案。这种方法的缺点是有两个构建步骤。但是,我计划拆分 jenkins 作业并在 2 个从属设备上运行它,每个从属设备连接适当的设备以并行测试。

据我所知,这也将是 Xcode 构建服务友好的,因为它也基于项目中的方案工作。真的太糟糕了,XCTest 中没有为此内置更优雅的东西,考虑到在新设备类型( watch /电视/吹风机/等)发挥作用的情况下,这并不能很好地扩展

最佳答案

要针对特定​​设备进行测试,需要编辑项目的方案。在 Product > Scheme > Edit Schemes 下,可以选择为每个设备选择特定于设备的测试。

Scheme Editor

关于ios - 将 Xcode 5 中的单个 XCTest 单元测试用例定位到通用应用程序的特定 iOS 设备?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19594418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com