0

我对 XCode 4.2 有一个奇怪的问题。最近我决定为我的项目添加代码覆盖支持,该项目有一个名为SomeClasswith的类,该类someMethod会引发异常:

@interface SomeClass : NSObject

- (void)someMethod;

@end


@implementation SomeClass

- (void)someMethod {  
  [NSException raise:NSInternalInconsistencyException format:@"Some reason..."];
}

@end

该类通过SomeClassTests位于具有以下方法的测试项目中进行测试:

- (void)testSomeMethod {
   SomeClass *sClass = [[SomeClass alloc] init];

   STAssertThrowsSpecificNamed([sClass someMethod], NSException, NSInternalInconsistencyException, @"Some description...");
}

到目前为止一切顺利 - 测试通过。为了支持代码覆盖,我必须根据这个源打开“仪器程序流程”和“生成测试覆盖文件”构建设置。但是当我打开“仪器程序流程”时,测试失败并出现以下错误:"raised Some reason... (Expected exception:NSException)" 所有其他测试都运行良好。这种行为的原因可能是什么?

4

1 回答 1

0

我只是通过升级到最新的 xcode 来解决这个问题。

于 2012-07-03T15:40:40.327 回答