gpt4 book ai didi

ios - 将外部框架连接到 UI 单元测试目标,iOS

转载 作者:IT王子 更新时间:2023-10-29 07:58:08 25 4
gpt4 key购买 nike

所以,我手头已有项目,我正在尝试使用苹果提供的这个新的精美 UI 测试包来创​​建一些 UI 测试。问题是测试目标无法访问任何外部框架(我需要对其中之一进行一些设置)。在构建阶段添加框架和从主要目标应对框架搜索路径没有任何作用。

经过一天的浏览,我只发现了一件事,那就是“让事情有点不同”。通过将 Bundle Loader 和测试主机设置为 $(BUILT_PRODUCTS_DIR)/App.app/App ,我仍然无法将外部框架导入 test.m,但我可以导入为它们执行此操作的类自己。除非它没有破坏某些东西,否则一切都会很好而且花花公子。现在通过设置 Bundle 和 Host,我的 UI 测试无法执行启动方法:

[[[XCUIApplication alloc] init] launch];

它因错误而崩溃:断言失败:UI 测试失败 - 应用状态仍未终止。

最后我可以从设置中删除启动方法并手动触发每个测试,因此它每次在执行前都会重新启动应用程序,但这个解决方案似乎是错误的(尤其是对于一些更大的项目)。有谁知道处理这个问题的正确方法吗?

最佳答案

我为此所做的是向 XCUIApplication 添加一个环境变量以指定正在运行的 UI 测试。然后我在应用程序的主要部分对 #DEBUG 进行预处理器检查,然后检查是否设置了 test 环境变量;如果有,请执行 UI 测试的必要步骤。

从本质上讲,这将允许您根据需要如何配置您的应用程序以运行 UI 测试。这也意味着预处理器检查将完全删除发布版本的设置代码。

关于ios - 将外部框架连接到 UI 单元测试目标,iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31045668/

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