gpt4 book ai didi

ios - 在为 iOS 项目运行 SenTest 测试时,我可以使用 LLVM 在 Xcode 4 中使用条件定义吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:56:11 26 4
gpt4 key购买 nike

我发现很多人使用 Xcode 3 来执行此操作,但它似乎在 Xcode 4 中不再有效。或者,它部分有效……

我在我的测试目标下为调试和发布添加了一个预处理器宏“TEST_TARGET”,如果我在实际单元测试中使用 #ifdef TEST_TARGET,它会按预期工作。

但是,我真的很想从一个源文件中记录一些额外的信息,该源文件只是主应用程序的一部分,当它在单元测试下运行时(即只是一个标准源文件,而不是单元测试文件)。该源文件似乎没有“看到”定义。我已经逐步调试了调试器,#ifdef 中的代码从未执行过。

有没有办法告诉我的应用程序正在单元测试目标下运行?

最佳答案

您可以这样做:您可以在加载测试时测试已加载的内容,但在未加载时则不测试。

例如:

if (NSClassFromString(@"SenTest")) {
NSLog(@"Extra info when running tests");
}

您还可以向仅出现在测试目标中的类添加类别,这也可能有帮助。

关于ios - 在为 iOS 项目运行 SenTest 测试时,我可以使用 LLVM 在 Xcode 4 中使用条件定义吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6790004/

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