コードをテスト可能にするために、レイジーイニシャライザーを作成しました。このように、単体テストでは、ゲッターが呼び出される前に、必要なオブジェクトをモックできます。
ただし、クラスメソッドに関しては、クラスメソッドは定義したプロパティにアクセスできません。
- クラスメソッドでプロパティにアクセスできるようにする方法はありますか?
- そうでない場合は、このクラスの外部でもアクセスできる静的変数を作成する方法はありますか?つまり、単体テストクラスからアクセスできますか?
@implementation
@synthesize webService;
+ (void)doSomething
{
self.webService.url = @"some url";
[self.webService start];
// do other things
}
- (WebService*)webService
{
if (!webService)
{
webService = [[WebService alloc] init];
}
return webService;
}
@end