Я новичок в Objective-C и XCode и считаю меня мысленно брошенным при обсуждении скомпилированных языков в целом. Я понятия не имею, как работают линкеры, и количество настроек сборки в каждой среде IDE, с которой мне приходилось испытывать дискомфорт, просто пугает меня.
Я начал изучать ObjC несколько дней назад, и, конечно же, начал с проекта Console Application. Все до сих пор хорошо, но у меня есть фон Ruby/Rails, который заставил меня сразу же понять, как настроить даже самую базовую среду TDD в XCode5.
Я использовал этот официальный dev doc, но он был менее тщательным. Взяв пробный путь и путь к ошибкам, я просто добавил цель XCTest в проект, а затем добавил класс тестового случая, проверив мой класс Fraction
:
#import <XCTest/XCTest.h>
#import "Fraction.h"
@interface FractionTest : XCTestCase
@end
@implementation FractionTest
- (void)setUp
{
[super setUp];
}
- (void)tearDown
{
[super tearDown];
}
- (void)testExample
{
Fraction *fraction = [Fraction new];
}
@end
При выполнении тестов компоновщик не может найти ссылочные символы:
Я читал о настройке Bundle Loaders и Test Host, но никто по-настоящему не объясняет, на какую цель они должны быть установлены. Они не работают для меня, и мне интересно, нужен ли такой простой 3 файлный большой проект даже в настройках сборки.
Как я могу просто добавить тестовый класс, который будет тестировать другой класс с помощью простых утверждений?