![]() |
|
|
![]()
|
|
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
+500 Писать юнит-тесты для проекта сделанного по принципу: накидали компонентов, настроили связи, подключили всё это к контролам, без выделения функционала в логичные классы - это рельный 3,14здец! X-Vlad, скажи пожалуйста ты реально пишешь unit-тесты на delphi в этом db-приложении? Особенно интересует область тестирования application server-a. Я веду два проекта с таким же преклонным возрастом(одному более 10 лет, второй помоложе), и при попытке сообразить как покрыть тестами этот код, у меня мозг скукоживается. Я могу понять как протестировать вспомогательные классы, но как создать mock-объекты для датасетов, я пока не могу сообразить. =( Проекты состоят из клиента и бд на firebird-e, сервера приложений просто нет, а большая часть бизнес логики реализована в БД в хранимых процедурах/триггерах. Дико это звучит пока не попробуешь. А когда попробуешь, то понимаешь, что при таком подходе, классы получаются более цельными и логичными. |
|||
|
||||
| X-Vlad |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 570 Регистрация: 10.4.2002 Где: Украина, Львов Репутация: 3 Всего: 5 |
ну честно говоря жарптица плохая в ипользовании... разве что в маленьких компаниях и при малых обьемах данных.
У нас нетолько юниттестами покрыт код дельфи, .Net но еще и сторед процедуры. Юзаем как я писал выше MS SQL Server 2005, 2008, базы в стаблицамы в которых несколько миллионов рекордов. Насчет мокапа данных для тестирования - в ДевЕкспресах есть МемориДатасет, вот в него взаганяешь данные и работаешь с ним, или пишем коллекции и т.д. На проекте более 5000 юниттестов, несколько сотен юниттестов на сторед процы.
бывает такой код который физически невозмождно покрыть юниттестами, мы в таких случаяхъ не напрягаемся Это сообщение отредактировал(а) X-Vlad - 15.3.2009, 14:09 |
||||||
|
|||||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
Это не имеет отношения к теме. =) А много людей на проекте? |
|||
|
||||
| Delphist |
|
||||||
![]() Delphist Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2145 Регистрация: 3.2.2004 Где: всегда в сети Репутация: 1 Всего: 3 |
mock-объекты, это что?
А насколько сильно он отличается от rxlib'овского МемориДатасета?
А вы реально пишите юнит-тесты перед тем как писать объетк? Это сообщение отредактировал(а) Delphist - 16.3.2009, 14:35 -------------------- ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др). Когда-то давным-давно использовал это... |
||||||
|
|||||||
| X-Vlad |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 570 Регистрация: 10.4.2002 Где: Украина, Львов Репутация: 3 Всего: 5 |
Добавлено @ 15:15
если это необходимо. Добавлено @ 15:16
если ты пишешь юниттест на логику которой нужен набор данных например из БД, а у тебя еще не готовы ДБ изменения (таблицы, логика, данные). Вот в этом случае ты создаешь мокап данных и стравливаешь их юниттесту Добавлено через 5 минут и 40 секунд
не знаю не иследовал. Это сообщение отредактировал(а) X-Vlad - 18.3.2009, 15:17 |
||||||||
|
|||||||||
| Delphist |
|
|||
![]() Delphist Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2145 Регистрация: 3.2.2004 Где: всегда в сети Репутация: 1 Всего: 3 |
X-Vlad, спасибо за ответы.
Добавлено @ 15:46 Тема все еще актуальна!, так что высказываемся, не стесняемся Добавлено @ 15:48 Почитал стайтеку (http://rsdn.ru/article/patterns/patterns.xml) делаю вывод, что народ все правильно понимает, что я хочу, только вот все это бы к БД, с каким-нить инструментов созданным специально для любителей БД по MVC. Это сообщение отредактировал(а) Delphist - 18.3.2009, 15:49 -------------------- ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др). Когда-то давным-давно использовал это... |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
||||
|
||||
| Delphist |
|
|||
![]() Delphist Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2145 Регистрация: 3.2.2004 Где: всегда в сети Репутация: 1 Всего: 3 |
под иснструментом я имел ввиду -------------------- ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др). Когда-то давным-давно использовал это... |
|||
|
||||
| Delphist |
|
|||
![]() Delphist Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2145 Регистрация: 3.2.2004 Где: всегда в сети Репутация: 1 Всего: 3 |
Все исчепали мы себя?
-------------------- ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др). Когда-то давным-давно использовал это... |
|||
|
||||
| pseud |
|
|||
![]() Экспёрт Тыдыщ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1175 Регистрация: 18.5.2007 Где: Минск, Беларусь Репутация: 16 Всего: 40 |
Bose, X-Vlad, остальные, поживее-поживее, крутите извилинами, работа-то стоит, работу-то надо работать, а мы из-за вас пролетаем, весь воронеж ждет. я разочарован. -------------------- Испытание чужого терпения можно считать успешным, если оно лопнуло... |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: нет Всего: 154 |
это называется "объектно ориентированное программирование"(с) послушайте умных людей у этого автора есть еще одна книга: "Patterns of Enterprise Application Architecture", там описаны паттерны проектирования для работы с БД основная проблема при работе с БД - постоянное преобразование данных из системы типов БД, в систему типов языка программирования, MVC и TDataset этой проблемы не решают. Для этого используют различные ORM(object relational mapping) паттерны, которые описаны в этой книге, например Active Record. Существует множество различных ORM библиотек для .NET и для динамических языков, насчет дельфи, я не в курсе. Добавлено через 1 минуту и 4 секунды для .NET есть Entity Framework, NHibernate, возможно что-то еще Добавлено через 14 минут и 35 секунд Вообще, я не понял, причем тут Dataset-ы и почему они не вписываются в MVC паттерн, согласно MVC, у нас есть data access layer, business logic layer, presentation layer. TDataset, он какбэ часть data access layer, то что он содержит нужно отобразить в набор объектов бизнес логики приложения, которые могут взаимодействовать с presentation layer-ом? По моему, даже на дельфи эти уровни можно разделить и сделать независимыми. |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
lol Мне тоже так кажется, но по-мойму, автор хочет, чтобы ему дали готовый набор компонент "для реализации MVC" |
|||
|
||||
| Delphist |
|
|||
![]() Delphist Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2145 Регистрация: 3.2.2004 Где: всегда в сети Репутация: 1 Всего: 3 |
Скажи, пожалуйста, этот букварь на русском существует или аналогичный книжки на русском -------------------- ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др). Когда-то давным-давно использовал это... |
|||
|
||||
| Kbl4AH |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 741 Регистрация: 1.4.2008 Где: Вятка Репутация: 6 Всего: 15 |
||||
|
||||
| vladimir74 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 241 Регистрация: 28.11.2006 Репутация: 2 Всего: 3 |
тебя что интересует? MVC в Delphi или руссая документация? 1. тебе кажется уже многие сказали что есть 2. я не искал, если так волнует - поищи, ненайдешь - напиши сам. Заодно и сам разберешься и может другим поможешь. А если хорошо напишешь то и книгу выпустишь и денег заработаешь --------------------
* В доме помешанного не говорят о миксере.* На любой Ваш вопрос у меня есть любой мой ответ. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |