Форум: "Потрепаться";
Текущий архив: 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