gpt4 book ai didi

iphone - iPhone 上的 GHUnit 代码覆盖率

转载 作者:行者123 更新时间:2023-12-03 21:07:24 25 4
gpt4 key购买 nike

我最近一直在学习如何使用 GHUnit for iPhone 编写单元测试。但是,我不知道如何通过 xCode 4 设置代码覆盖率来处理此问题。

googletubes(不知何故)在这件事上并没有特别有帮助。

最佳答案

我在 this blog article 中介绍了如何使用 GHUnit 获取代码覆盖率(免责声明:我是作者)

简单总结一下,对于 GHUnit,您需要:

  • 在 Xcode 项目的测试目标中启用两个build设置“生成测试覆盖文件”和“仪器程序流程”
  • 在测试目标的 main.m 文件中添加 fopen$UNIX2003 和 fwrite$UNIX2003 函数的代码,而不是在 AppDelegate 中。这是我的 main.m 文件的样子:


#import <UIKit/UIKit.h>

int main(int argc, char *argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, @"GHUnitIOSAppDelegate");
}
}

FILE *fopen$UNIX2003(const char *filename, const char *mode) {
return fopen(filename, mode);
}

size_t fwrite$UNIX2003(const void *ptr, size_t size, size_t nitems, FILE *stream) {
return fwrite(ptr, size, nitems, stream);
}

  • 编辑您的测试目标 .plist 并添加属性“应用程序不在后台运行”,值为“YES”。请注意,这很有用,因为覆盖率文件仅在应用程序退出时写入。

有关更详细的解释/屏幕截图,请参阅上面的博客文章。这篇文章更加详尽,因为它还涵盖了 Jenkins 集成和 OCUnit。

关于iphone - iPhone 上的 GHUnit 代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5629705/

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