Тесты, на мой взгляд — контракт между разработчиками. При разборе чужого можно посмотреть тесты в качестве некой спецификации того как работает код. Кроме того при подход Test First, мы сначала пишем тест, прогоняем его, убеждаемся что падает(нет реализации еще!) пишем сам рабочий код, прогоняем тест -работает! Итог: есть спецификация на код(«тест») и функционал точно работающий так как описано в тесте. Незаменимо в рефакторинге! Как иначе обеспечить то, что ты не поломал api-класса?
никогда не занимался перлом, но предположу что надо проверять что обработаны все альтернативные сценарии работы, допустим если после блок if есть else, то оно тоже тестируется.
P.S. В последнем абзаце «вложденность» -> «вложенность»?
Карта != чек.
Могу ошибаться, но грубо говоря, счет владельца кошелька WebMoney — средства которые система хранит для данного клиента. Внутри это обеспечивается чеком в электронной форме(для пользователя это не очевидно, он и знать не знает, что еще и чеки есть). Но когда пользователь проводит операции со счетом, то происходит размен текущего чека пользователя, а система создает платежное поручение.
О платформе Catalyst от Adobe слышали? Когда из шаблона в формате .psd генерируется готовое приложение? То есть накидать дизайн в фотошопе(без особых знаний) и вуаля — готово, чуть доделать и можно людям отдавать.
Издержки предоставления видео-контента.
При перемотке назад — плееры(обычно) не хранят предыдущих кадров для больших роликов, с целью экономии ресурсов.
Догрузка контента после полной загрузки вроде бы должна быть исправлена в новой версии.
Есть во многих фреймворках. Проблема в том что люди зачастую не понимают как это использовать.
Не сработал еще «переключатель» у человека как именно это делать.
А плеер ютуба сильно тормозит?)
Как разработчик на флеше могу сказать, что точно больше половины разработчиков не знает про оптимизацию и профилировку, так что зависит от кривизны рук.
Можно писать 2 типа тестов в таком случае.
Первый — модульные. Тестируем один класс и в качестве объекта для работы с БД подсовываем какую-то простую реализацию, которая допустим считает сколько запросов insert мы отправили. Делаем тест(опишу словами, не хочу привязываться к языку программирования).
Выставляем счетчик записи на 0
создаем тестовые данные для создания записи
производим запись
проверяем что счетчик теперь 1
По желанию — проверка что именно те данные отправились.
Второй — интеграционные. Работаем с живой тестовой базой.
создаем соединение с тестовой базой
создаем тестовые данные для создания записи
производим запись
проверяем что количество записей изменилось
Оба тесты очень похожи при описании словами, но выявляют разные проблемы. Во втором случае, например, мы проверяем и правильность сгенерированного нами запроса. То есть тест свалиться если мы использовали зарезервированные слова или недопустимые значения.
P.S. В последнем абзаце «вложденность» -> «вложенность»?
Могу ошибаться, но грубо говоря, счет владельца кошелька WebMoney — средства которые система хранит для данного клиента. Внутри это обеспечивается чеком в электронной форме(для пользователя это не очевидно, он и знать не знает, что еще и чеки есть). Но когда пользователь проводит операции со счетом, то происходит размен текущего чека пользователя, а система создает платежное поручение.
При перемотке назад — плееры(обычно) не хранят предыдущих кадров для больших роликов, с целью экономии ресурсов.
Догрузка контента после полной загрузки вроде бы должна быть исправлена в новой версии.
Не сработал еще «переключатель» у человека как именно это делать.
Как разработчик на флеше могу сказать, что точно больше половины разработчиков не знает про оптимизацию и профилировку, так что зависит от кривизны рук.
Первый — модульные. Тестируем один класс и в качестве объекта для работы с БД подсовываем какую-то простую реализацию, которая допустим считает сколько запросов insert мы отправили. Делаем тест(опишу словами, не хочу привязываться к языку программирования).
По желанию — проверка что именно те данные отправились.
Второй — интеграционные. Работаем с живой тестовой базой.
Оба тесты очень похожи при описании словами, но выявляют разные проблемы. Во втором случае, например, мы проверяем и правильность сгенерированного нами запроса. То есть тест свалиться если мы использовали зарезервированные слова или недопустимые значения.