Ветеран
Зарегистрирован: 02 December 2002
Сообщения: 444
Примеры кода: 1
|
RE[3]: Тестирование ПО |
25 March 2005 14:04 |
|
|
|
|
Я вот тут посмотрел Nunit и пришел к выводу, что им-то пользоваться может только программист. Причем достаточно высококвалифицированный. И я надеюсь, что нунитом можно будет выловить много багов. А вот дальше... берем девочку, необременненую интеллектом, садим за браузер и рассказываем, что должно происходить. Она пытается это делать и пишет репорты о то чето у нее упало, что не получилось и все такое. Думаешь ей стоит платить столько же сколько программеру?
Если ты пытаешься поставить процесс тестирования в своей компании, которая занимается разработкой программных продуктов, то на основании твоих утверждений, я могу тебе смело сказать, что тебя ждет полный провал.
Процесс тестирования, или в целом процесс контроля качества продукта (не только какие то маленькие юниты) - это сложный и трудоемкий процесс. На эту тему написано много книг и просто так, с ходу, особенно с подходом, который ты декларируешь, ты не сможешь поднять качество продукта. Посмотри, почитай, поищи, что делается вокруг.
Чтобы использовать юнит-тестирование, тебе надо будет в корне сменить процесс разработки и, в частности, практику программирования каждого программиста. Это, поверь мне, очень сложный процесс, иногда просто невозможный. Даже если начать его использовать, сделать его действительно эффективным потребует очень многих усилий и может даже не получиться вообще. Не забывай, что написание юнит тестов занимает столько же и даже больше времени, чем сам код.
Простое тестирование "обезьянним" образом называется black-box тестирование. В этом случае тестировщик считает всю функцию черным ящиком и ориентируется при тестировании только на описание, которое ему дали на вход. Он не сможет определить взаимосвязь с другими функциями в системе, отловить какие-то сложные баги и все такое. Он просто сможет пройти и проверить, что все заявленные функции работают. Чтобы такого человека запустить в работу, ему нужно подготовить материалы. Это трудоемкая работа. Если делать пояснения на пальцах, то это будет напрасная трата времени - через день он все забудет. Это уже проверено.
Есть более сложное тестирование - "white-box". В этом случае происходит не просто тестирование, а анализ всей функциональности на согласованность, логический смысл, удобство использования. В результате такого тестирования могут возникнуть как баги, так и предложения по изменению фукнциональности. Люди, которые могут такое сделать, намного более квалифицированны, чем даже разработчики. Получают они, соответственно, тоже немало. Без таких людей невозможно создать конкурируемый продукт.
Чтобы ни было, создать свою методологию тестирования и вообще внедрить процесс тестирования так, чтобы он реально приносил пользу - это процесс очень сложный. Думаю, тебе надо сменить в голове направление мыслей на то, что разработка сама является более простой задачей, чем оценка качества этой самой разработки, чем и занимаются тестировщкии в общем смысле их работы. В таком случае, будет понятно, что тестирование будет занимать существенную часть бюджета проекта, как по деньгам, так и по времени. Евгений Заритовский
Wild Apricot Lead Developer
Последний раз редактировалось 25 March 2005 14:08
|
|