У меня есть pickerView с динамически меняющимся количеством строк. Я хочу выбрать этот счет из моей модели в главной целевой программе.Получить доступ к классам в другой цели с помощью KIF
Например, // Тест целевой
#import <KIF/KIF.h>
#import "SearchModel.h" //import class from main target
@interface Acceptance_Tests : KIFTestCase
@property (nonatomic, strong) SearchModel * searchModel;
@end
@implementation Acceptance_Tests
-(void)test_01_SearchWithConditions
{
self.searchModel = [[SearchModel alloc] init];
[tester tapViewWithAccessibilityLabel:@"Search Library"];
[tester tapViewWithAccessibilityLabel:@"type_pickerView"];
//choose type
for(int i = 0; i < self.searchModel.types.count; i++)
{
[tester waitForTappableViewWithAccessibilityLabel:@"Search"];
[tester selectPickerViewRowWithTitle:[self.searchModel.types objectAtIndex:i]];
[tester tapViewWithAccessibilityLabel:@"Search"];
}
}
Когда я Cmnd + UI получаю сообщение об ошибке
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_SearchModel", referenced from:
objc-class-ref in Acceptance_Tests.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Также я могу добавить SearchModel.m к Компилировать Курсы в тестовой мишени , но это означает, что я должен добавить все классы дважды (в основной мишени и в целевой цели), мм. Любые мысли? Могу ли я получить доступ к классам в основной цели другим способом ?
Являются ли типы вашего SearchModel динамическими или статическими? – kpsharp
kpsharp, dynamic –
Попробуйте проверить ассоциацию файлов. Убедитесь, что файл включен в цель. – kpsharp