Как я могу определить, выполняю ли я тест EarlGrey в моем приложении?
В целях тестирования я хочу обойти экран входа в приложение. Я могу сделать это, просто закомментировав код, который выдвигает контроллер представления при запуске тестов. Однако это не идеально. Я придумал лучший способ установить env var в моей схеме и затем выполнить:
if ([NSProcessInfo processInfo].environment[@"TEST"]) {
// Running EarlGrey test.
}
Я хотел бы знать, есть ли лучший способ определить, выполняю ли я тесты EarlGrey?
1 ответ
Решение
Как и в faq, вы можете использовать конфигурацию сборки, которая позволяет вам добавить проверку вроде:
#if EARLGREY_ENV
NSLog(@"This is being run in an EarlGrey test.");
#else
NSLog(@"Not an EarlGrey test.");
#endif
Вы также можете добавить проверку выполнения, как NSClassFromString("EarlGreyImpl") != nil
чтобы увидеть, работаете ли вы в среде EarlGrey.