Из документации NSUserDefaults:
init: Возвращает объект NSUserDefaults, инициализированный со значениями по умолчанию для текущей учетной записи пользователя.
Это обычно не должно быть пустым. Я не совсем уверен, что вы хотите проверить здесь, так как проверка функциональности NSUserDefaults была бы пустой тратой времени.
Но скажем, вам нужно, чтобы некоторые ключи еще не были зарегистрированы, чтобы ваш тест всегда имел одинаковую начальную точку: затем просто удалите их в setUp (и восстановите их позже в tearDown, если хотите).
Что-то вроде:
- (void) setUp {
[super setUp];
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"myTestKey"];
// synchronize the change, or just use resetStandardUserDefaults:
[someObjectBeingTested setDefaults:[NSUserDefaults resetStandardUserDefaults]];
}
Если у вас нет определенного списка ключей, но вам нужно все стереть, вам придется использовать утилиты CoreFoundation Preferences, см. CFPreferencesCopyKeyList.