Форум программистов, компьютерный форум CyberForum.ru

Unit-testing UIViewControllers - Программирование iOS

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование iOS первый старт приложения http://www.cyberforum.ru/ios-dev/thread946272.html
Доброе время суток! Я пишу приложение и мне необходимо следующее: при первом старте приложения самое первое что видит пользователь после окна загрузки - это окно выбора языка и предложения войти через свой аккаунт в фейсбук. Как это можно реализовать, чтобы в последующие запуски приложения это окно уже не появлялось. Я новичок, не могу пока дотумкать, практики не хватает, помогите...
Программирование iOS Slide menu Привет всем. Возможно тут есть люди которые сталкивались с выбором имеющихся библиотек для реализации slide menu как в facebook app. Кто на чем остановил свой выбор и почему ? http://www.cyberforum.ru/ios-dev/thread946016.html
Программирование iOS Выплата средств за приложение / Contracts, Tax, and Banking
И так, одобрили мое приложение, Ready for Sale, но и тут же его перекинуло в "Pending Contract" http://s3.********************/uploads/thumbs/2013/08/7fe5e3e053f72d47057d345f474609a8.png Как подключить свою банковсукю карту? (Visa/MasterCard). Обязательно узнавать ИНН, Корр.Счет? http://s6.********************/uploads/thumbs/2013/08/4010f2c8aca5df9010c9ea4e04578f8f.png Нельзя чтоб выплаты шли...
Рисование на картах Программирование iOS
Подскажите как реализовать возможность выделения области на карте, при помощи рисования на ней. Как в этой программе: https://itunes.apple.com/us/app/real-estate-by-zillow-homes/id310738695?mt=8 или на этом сайте http://www.zillow.com/homes/for_sale/days_sort/40.932709,-73.328934,40.460009,-74.09111_rect/9_zm/_fm/
Программирование iOS Наследование outlet http://www.cyberforum.ru/ios-dev/thread944699.html
Привет. Ситуация есть два контроллера addStudController и infStudController (detalStud) и есть xid файл с представлением где разные поля имя, фам. , статус, и т.д. В контроллере addStudController есть outlet’ы для этих TextField. в h @interface AddStudController: UIViewController @property (retain, nonatomic) IBOutlet UITextField *name; …… @end
Программирование iOS core data запрос на получение суммы атрибута, всех записей Привет, есть сущность продукция имеющая свои атрибуты один из них цена, Есть н продукций нужно найти сумму всех цен Для этого я использую вот такого вида запрос… -(void)sum{ NSFetchRequest *request = init]; ]; подробнее

Показать сообщение отдельно
Vorona
Peace 2 all shining faces
668 / 530 / 45
Регистрация: 05.03.2010
Сообщений: 1,276

Unit-testing UIViewControllers - Программирование iOS

01.09.2013, 19:10. Просмотров 848. Ответов 7
Метки (Все метки)

Всем привет!

Возник вопрос по поводу тестирования view controller'ов.
Посмотрел, как это делает Jon Reid в своем туториале: http://qualitycoding.org/uiviewcontroller-tdd/
Почитал, как это советует Graham Lee, в своей книге: http://www.amazon.com/Test-Driven-iO.../dp/0321774183

Пишу простенькое наглядное приложение. В основе лежит паттерн MVVM.
Во ViewModel я работаю со слоем BLL, который работает с DAL, готовлю все данные, провожу валидацию данных и т.д.
Во View (ViewController) я уже рендерю эти данные и вывожу на экран.

Сейчас моя задача вывести просто список сущностей в UITableView. т.е. по-сути мне нужно протестить, что в таблице будет создано столько же рядов, сколько имеется сущностей в списке, нужное кол-во секций и т.д.

В вышеупомянутых ресурсах, корректную работу UIVIewController'a тестируют путем вынесения необходимых контролов в публичный интерфейс. Мне это, естественно, не нравится, потому на помощь приходит DependecyInjection при помощи конструкторов. Т.е. при создании вьюконтроллера в тесте, я ему в конструктор передам таблицу, датасорс и делегат и дальше буду проверять их состояние, или же при помощи моков – поведение.

Вопрос: получается, чтобы протестировать разные "куски" функциональности, мне нужно будет создавать новый конструктор для каждой ситуации?
Или же вынести все необходимые компоненты в так называемый Protected хедер и уже при помощи него тестировать?

может какие-то техники знаете?

Добавлено через 7 минут
p.s. скопипастил вопрос в ветке форума о Разработке и тестировании, так как тема касается и этой и той ветки форума.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru