Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.08.14;
Скачать: [xml.tar.bz2];

Вниз

Отлаживание - это процесс избавления программы от лажи...   Найти похожие ветки 

 
blackman   (2003-07-29 16:55) [0]

Способов отладки очень много.
Если сложить темное прошлое со светлым будущим, получится серое настоящее, а именно процесс отладки программы, который я не очень люблю.
А как вы это делаете ?
Поделитесь опытом ...


 
vuk   (2003-07-29 17:20) [1]

F7, F8


 
petr_v_a   (2003-07-29 17:24) [2]

F9


 
blackman   (2003-07-29 17:40) [3]

Фу, как примитивно. Каждый оператор что ли ?


 
Fredericco   (2003-07-29 17:42) [4]

Memo1.Lines.Add(MyDebugInfo);
И поехали ...


 
Soft   (2003-07-29 17:48) [5]

Специальные бета-тестеры не помогут?


 
han_malign   (2003-07-29 17:50) [6]

круче логов лучше нет


 
Mike1 Kouzmine1   (2003-07-29 17:52) [7]

А я вообще не отлаживаю. В моих поделках багов нет, одни фичи.


 
vuk   (2003-07-29 17:52) [8]

to blackman:
>Каждый оператор что ли ?
Нет, перед этим Ctrl+F9. Ну и еще WriteLog иной раз... :o)


 
blackman   (2003-07-29 17:56) [9]

Я хочу уточнить.
Меня интересует, не отлов простых ошибок, а моделирование ситуаций, которые могут возникнуть при работе простого юзера.


 
Mike1 Kouzmine1   (2003-07-29 18:01) [10]

Очень просто. Жму на все, что не попадя. Бью клавиатурой по голове тестера (благо, что жена. Ей только на пользу). Если не сбойнет, то можно отдавать на тестирование заказчику.


 
vuk   (2003-07-29 18:03) [11]

А вручение софтины юзеру на тестирование не поможет? Обычно сразу находятся вещи, которые либо не раелизованы либо реализованы не совсем верно.


 
blackman   (2003-07-29 18:08) [12]

>vuk
Конечно проще всего передать юзеру и ждать, что он скажет, но что он скажет ?
Ничего хорошего, как правило. Иногда и понять трудно где и что у него сломалось. Стало быть надо что-то придумать сначала самому, но как все учесть ?
Вот меня и интересует это. Расскажите о своем опыте и ошибках.


 
vuk   (2003-07-29 18:22) [13]

to blackman:
>Конечно проще всего передать юзеру и ждать, что он скажет, но
>что он скажет ?
Мы занимаемся разработкой софта для внутреннего использования. В нашем случае в качестве юзера берется не совсем конечный юзер, а начальник подразделения, который:
1. знает, какие процессы происходят в его подразделении.
2. принимал участие в постановке задачи.
Так что такой юзер может сказать очень много.


 
Mike1 Kouzmine1   (2003-07-29 18:26) [14]

Кроме конечного пользователя, не обычного, а делающего тз, никто не сможет сказать - правильно работает или нет. Всегда, оговариваю, что после написания и отлова ошибок, программа сдается в опытную эксплуатацию. Максимум месяц и все доводиться до ума.


 
blackman   (2003-07-29 21:04) [15]

>vuk
Да это интересно. Использование начальства в качестве подопытного кролика. К сожалению я так по ряду причин сделать не могу.
>Mike1 Kouzmine1
Тоже вариант, но не всегда есть этот месяц. Как правило, если уж передал, то начинают сразу работать и если есть ошибки, то они расцениваются как прокол.
Вот именно поэтому хотелось бы услышать о отладке с помощью программиста-разработчика, но видимо надо поставить себя в условия близкие к боевым. Т.е. выглядеть как пользователь.
Может быть что-то придумывать с контрольным примером?
Или есть какие-то программы имитаторы глупого юзера.
А если есть литература на эту тему, то совсем хорошо.


 
vuk   (2003-07-29 21:19) [16]

to blackman:
>Использование начальства в качестве подопытного кролика.
Они даже в этом заинтересованы, ведь им всем, вплоть до директора, тоже потом с этой системой работать. И насколько получившаяся система будет отражать процессы в их подразделениях, очень сильно зависит от них.


 
blackman   (2003-07-29 21:41) [17]

>vuk
>тоже потом с этой системой работать
В моем случае нет. Мы передаем другим.
Хотя конечно начальство как всегда ответит за все,
но протестировать не в состоянии.
Может быть есть другие идеи ?


 
Dred2k   (2003-07-29 21:47) [18]

> blackman © (29.07.03 16:55)

Трезвый разум + http://www.automatedqa.com/products/memproof.asp
;)


 
blackman   (2003-07-29 21:58) [19]

>Трезвый разум
Это конечно всегда выручает.
Из каждой безнадежной ситуации есть по крайней мере два выхода.
Но куда ?
Остальное попробуем. А для 7 нет.


 
Dred2k   (2003-07-29 22:02) [20]

> А для 7 нет.

Не пробовал. Особенности наверняка есть, но тулза мониторит любое приложение - для этого нет объективных ограничений (показа кода не будет, ясень пень).


 
Alex Konshin   (2003-07-30 02:48) [21]

Я по сути косвенно участвую в тестировании больших продуктов. Не то, чтобы я кнопки нажимаю, я разрабатываю комплексы для тестирования. Но у нас тут другая специфика: продукты огромные (в установленом виде - пара гигабайт), над ними работает куча народа в разных странах. Разработана целая куча тулов для автоматизации тестирования, но практически основная их цель - regression тестирование, то есть, чтобы то, что работало раньше, работало и теперь, потому как очень трудно предугадать последствия какого-нибудь исправления (пусть даже исправления какой-то ошибки). Здесь конвейер, девелоперы исправляют ошибки или добавляют что-то, строится продукт, потом его тестируют вручную и автоматически, и о наденных проблемах сообщается девелоперам. Это очень упрощенная схема. Реально этот цикл занимает больше недели, а новые билды стартуют раз в неделю, то есть одновременно идет работа с несколькими билдами на разных стадиях.
Для апвтоматизированных систем тестирования используются разные продукты и подходы, все зависит от того, что тестируется и как.


 
Nick Denry   (2003-07-30 03:04) [22]

в отдельном проекте


 
Думкин   (2003-07-30 06:25) [23]

Тестирем в основном с помощью тестеров.

Сейчас разгребаю XP-программирование, но пока с их тестами не сильно дружу.


 
Anatoly Podgoretsky   (2003-07-30 07:54) [24]

Mike1 Kouzmine1 (29.07.03 17:52)
Правильно поступаешь, зачем тратить время на поиск ошибок, много проще писать без них. К кончно итоге их будет чрезвычайно мало и в основном логические.


 
Думкин   (2003-07-30 07:59) [25]

> Anatoly Podgoretsky © (30.07.03 07:54)
Так они-то заразы зачастую и наиболее тяжелые.
Другие ошибки - с ними ясно. А вот если где-то логика промахнулась, особенно когда дают исправления в существующую программу. Не раз было, все работает тип-топ, и кому-то что-то ударило - внедряешь, и полезло.


 
Dmitriy O.   (2003-07-30 08:19) [26]

Когда я заканчиваю прогу на вид вроде нормальна даже несколько тестов провожу а когда запускаю в работу удивляюсь откуда столько лажи берется. Поэтому поручаю кому нибуть работать за оператора 2-3 недели и все лажи исправляю в процессе не сходя с рабочего места. Обычно за это время выевляется 95% лаж.


 
blackman   (2003-07-30 09:27) [27]

>Alex Konshin
>Разработана целая куча тулов для автоматизации тестирования
Да конечно проект проекту рознь, но приведите пожалуйста хотя бы общие принципы построения. Примерчик какой нибудь, что бы направление копания определить.
>Anatoly Podgoretsky
:))
В каждой, даже хорошо отлаженной программе есть хотя бы одна ошибка. К.Маркс.


 
passm   (2003-07-30 09:41) [28]

В проект, который сейчас делаю, добавил форму, вываливающуюся при Exception. На ней баттон "Послать сообщение разработчику" (то есть мне). При клике формируется письмо с текстом ошибки.
При внедрении, думаю, завалят письмами. :))


 
blackman   (2003-07-30 10:04) [29]

>passm
Это я тоже делал, но получал только спам :))



 
Alex Konshin   (2003-07-31 08:10) [30]

Принципы просты: кто-то пишет тесты и есть какие-то способы проверки корректности работы теста. Для UI тестов эмулируются действия пользователей и сравниваются результаты (вплоть до сравнения экранов). Для функциональных тестов пишутся целые программки, которые проверяют какую-то оперцию или группу операций. Все это оборачивается в какую-то оболочку, которая прогоняет список тестов и выдает результаты. Тестов обычно несколько тысяч и полный прогон занимает от нескольких часов до нескольких дней, поэтому автоматизация прогонки тестов - это тоже серьезная и важная задача. Там есть что оптимизировать и где бороться за эффективность. И подобных комплексов для тестирования здесь несколько штук, каждый для своих продуктов и тестируемых аспектов. Мы имеем дело с C/C++ и Java на нескольких платформах, но у нас нет продуктов на Delphi.

Как ты понимаешь, мой опыт мало пригоден для твоего случая. Чтобы хоть как-то помочь могу только предложить заглянуть в JCL
http://sourceforge.net/projects/jcl/
Там есть юниты, которые помогают локализовать ошибки. После знакомства с Java этого явно не хватает в Delphi.


 
sniknik   (2003-07-31 08:43) [31]

Mike1 Kouzmine1 (29.07.03 17:52)
Anatoly Podgoretsky © (30.07.03 07:54)
нифига не получается, особенно если прога на поддержке. вставил какую нибудь дополнительную способность (ту что юзеры просят) а она "убивает" другие ранее реализованные и на первый взгляд не связанные... всего не предусмотриш. тестер просто необходим.


 
Alex Konshin   (2003-07-31 08:46) [32]

Это-то как раз и есть regression тестирование.


 
blackman   (2003-07-31 09:21) [33]

Прогресс убивающий регресс :))
> http://sourceforge.net/projects/jcl/
We"re Sorry.The SourceForge.net Website is currently down for maintenance.We will be back shortly
Жаль, что мы так и не услышали выступление начальника транспортного цеха.


 
Alex Konshin   (2003-07-31 09:25) [34]

Подожди немного, в 8:00 по Москве он работал - я как раз корректность ссылки проверял.


 
blackman   (2003-07-31 10:09) [35]

Ждемс, до первой звезды.
Я там был когда-то, но как-то не заинтересовало.
Повторим операцию.


 
Странник   (2003-07-31 11:37) [36]

> blackman
уже работает


 
blackman   (2003-07-31 11:43) [37]

>Странник
Спасибо.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.08.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.53 MB
Время: 0.144 c
14-45141
Igor__
2003-07-29 11:25
2003.08.14
TBitmap глючит


14-45065
Zheks
2003-07-26 21:32
2003.08.14
Дописка файлов, один в конец другого


14-45154
Alik$
2003-07-30 21:22
2003.08.14
Где найти компоненты помогите ?


14-45146
Soft
2003-07-29 11:51
2003.08.14
Загадки


14-45145
Vlad Oshin
2003-07-30 16:51
2003.08.14
Задачка. Не такая заковыристая, конечно,..





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский