iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了为什么在iphone单元测试中实例化UIFont会导致崩溃?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我试图单元测试一些iPhone代码实例化字体。我已将其缩小到以下崩溃单元测试: #import "test.h" #import <UIKit/UIKit.h> @implementation test - (void)testFonts { [UIFont systemFontOfSize:12]; } @end 这会导致错误: Test Case '-[test testFonts
我试图单元测试一些iPhone代码实例化字体。我已将其缩小到以下崩溃单元测试:

#import "test.h"
#import <UIKit/UIKit.h>


@implementation test

- (void)testFonts {
  [UIFont sy@L_674_1@FontOfSize:12];
}

@end

这会导致错误

Test Case '-[test testFonts]' started.
/Developer/Tools/RunPlatformUnitTests.include: line 415: 79768 Trace/BPT trap          "${THIN_test_RIG}" "${OTHER_test_FLAGS}" "${test_BUNDLE_PATH}"
/Developer/Tools/RunPlatformUnitTests.include:451: error: Test rig '/Developer/Platforms/iPhonesimulator.platform/Developer/SDKs/iPhonesimulator3.1.sdk/Developer/usr/bin/otest' exited abnormally with code 133 (it may have crashed).

似乎有一些设置我没有在我的单元测试目标,使这项工作。单元测试如何实例化字体?

解决方法

我的一个朋友最近正在进行中,我挖出了我成功设置的最后一个项目。诀窍是在应用程序测试中运行任何涉及UIFont的测试,而不是单元测试。以下是确定设置应用程序测试目标时需要做的几件事情:

>建立阶段:将生产代码带入您的测试目标
包括您的主要目标作为您的测试目标之一
依赖关系,而不是在您的测试中包含.m文件
目标。这只是为了组织。
> BUILD SETTinGS:确保测试目标的“Bundle Loader”被设置
到$(BUILT_PRODUCTS_DIR)/您的产品名称。您的产品名称
再次。注意,它是… / Product.app/Product – 就是那里
在路径的最后一段中没有.app如果你好奇
查看您所指的文件,找到您的构建产品,对
单击,选择查看包内容,然后找到可执行文件
>建立设置:您的测试目标的“测试主机”应设置为
$(BUNDLE_LOADER)。十分简单。
>建立设置:测试目标的其他链接器标志应该包括
框架SenTesTingKit。
>建立设置:“构建后测试”应为否。
>程序:“Build”应该包括你的测试目标和你的主目标
目标,以“测试”两个目标中唯一选择的框。
>方案:’测试’应该只包括你的测试目标。文件
包括自动添加到列表中。

…希望这将足以让你一切顺利。在一个地方并不是全部清晰地记录在案,而且想知道如何进行两种测试运行需要比我想承认的更多的时间和痛苦。

很奇怪,苹果似乎已经把自己的doco放在了这个问题上。我想知道还有另一个变化吗

如果您有任何补充,请打电话给我。这不是设置应用程序测试的完整指南,但上面是我遇到的无证件绊脚石。 FMI,我强烈推荐this CocoaWithLove article

大佬总结

以上是大佬教程为你收集整理的为什么在iphone单元测试中实例化UIFont会导致崩溃?全部内容,希望文章能够帮你解决为什么在iphone单元测试中实例化UIFont会导致崩溃?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。