Sometimes you want a base class for your unit tests. You can make one in objective-c like this.

FooBaseTest.h

#import 

@interface FooBaseTest : XCTestCase
@property (nonatomic, strong) SomeProperty *someProperty;
@end

FooBaseTest.m

@interface FooBaseTest ()
@end

@implementation FooBaseTest

- (void)setUp {
    [super setUp];
    self.someProperty = // whatever
}

@end

Then you extend it in your test class like this

SomeTest.m

@interface SubclassTest : FooBaseTest

@end

You can do it this way, or you do it is also via composition.

Advertisement