Iphone performSelector在单元测试目标C中不工作

Iphone performSelector在单元测试目标C中不工作,iphone,objective-c,ios,xcode,unit-testing,Iphone,Objective C,Ios,Xcode,Unit Testing,我正在尝试对我的应用程序进行单元测试,但performSelector不起作用。 我试过了 [自执行选择器:@selectorcheckkids:withObject:nil] 和performSelectorOnMainThread,但由于某些原因,无法调用该方法 [self checkIDs:nil] 似乎工作正常,但performSelector不工作。让这个方法被调用并不是我主要关心的问题。我问的原因是因为我有一个更大的问题,但我认为原因是performSelector不工作 我错

我正在尝试对我的应用程序进行单元测试,但performSelector不起作用。 我试过了

[自执行选择器:@selectorcheckkids:withObject:nil]

和performSelectorOnMainThread,但由于某些原因,无法调用该方法

 [self checkIDs:nil] 
似乎工作正常,但performSelector不工作。让这个方法被调用并不是我主要关心的问题。我问的原因是因为我有一个更大的问题,但我认为原因是performSelector不工作

我错过什么了吗?再一次,这是一个单元测试。谢谢

dispatch_async(dispatch_get_main_queue(), ^{
  [self checkIDs:nil];
});

试试这个,它应该可以工作。

检查id:是否获取id类型的对象,并返回id类型的对象?如果不是问题的任何一部分,请改用NSInvocation。checkIDS函数不返回id,它是一个void函数,但我需要知道它为什么不起作用。我正在导入使用performSelector的头文件,所以我想知道这些类在单元测试环境中是否会受到影响。performSelector上的apple docs说它应该可以工作,不知道为什么它不调用该方法。检查你的代码。您是否将其定义为-voidCheckId;或-voidCheckId:idsomeObject?在第一种情况下,您需要使用@SelectorCheckKids;在第二种情况下,您需要使用@SelectorCheckKids:。performSelector在单元测试中起作用,我只是在一个SentTestCase中使用了它。您能提供更多的代码和上下文吗?从你的帖子中,很难猜出问题出在哪里。