GHUnit 访问私有变量
Posted
技术标签:
【中文标题】GHUnit 访问私有变量【英文标题】:GHUnit access private variable 【发布时间】:2013-01-10 11:13:13 【问题描述】:我试图在我的单元测试中访问一个私有类变量:
Class
- private variable abc;
unit test
category/extension above the unittest m file content
@property (...) variable abc;
但在测试中,我总是遇到无法识别的选择器错误... 有什么技巧可以让私有变量可见/可测试?
抱歉,谷歌一无所获;)
您好, 马蒂亚斯
【问题讨论】:
【参考方案1】:试试[obj valueForKey:@"_ivar"]
您还可以为该类创建一个类别,并且您可以在方法期间访问任何私有变量
@implementation MyClass (UnitTestAddition)
- (id)getPrivateVariable
return _ivar;
@end
【讨论】:
太好了,obj valueforkey 正在工作 - 你知道为什么 obj._ivar 没有吗?谢谢!!! 要做或obj.ivar,该类必须在实现中实现[ivar]
,或者由编译器合成。否则将是无法识别的选择器异常。但是,您可以在类别中实现访问器以上是关于GHUnit 访问私有变量的主要内容,如果未能解决你的问题,请参考以下文章