Для примера посмотрите этот набор видео на Модульное тестирование с Xcode .
Проблема, с которой вы сталкиваетесь, заключается в получении ответов от сервера, когда у вас нет соединения или ответа.
Решение состоит в том, чтобы использовать макеты, такие как OCMock, для представления, что у вас есть эти ответы, или для вызова методов, которые были бы вызваны ответами напрямую.
Что касается того, сколько тестов - делайте как можно больше. Проверьте это сами и попросите других проверить это для вас, потому что они не будут использовать его так же, как вы. По возможности автоматизируйте тестирование, протестируйте приложение с помощью скрипта, который проведет вас через функциональные возможности вашего приложения. Протестируйте его случайным образом, выполнив неправильные действия, чтобы убедиться, что ваше приложение завершилось неудачно.
Нет смысла спрашивать нас, проводили ли вы тестирование, решать вам. Но подумайте над ответом, который даст вам пользователь вашего приложения, если вы спросите: «Достаточно ли я проверил?».