170 Часть II: Приемы и технологии тестирования
добился и какими бы классными специалистами ни стали все без исклю-
чения тестировщики, жалобы все равно не прекратятся. Каждый тестиров-
ЩИК периодически сталкивается со спорными особенностями поведения
программы, которые можно документировать как ошибочные или непонят-
ные, а можно и пропустить. Если пропустить такую особенность, то в
конечном счете может оказаться, что это была самая настоящая ошибка. А
если составить отчет, возможно, его рассмотрение будет для других сотруд-
ников пустой потерей времени. В хорошо организованных группах тести-
рования обсуждению подобных вопросов и выработке оптимальной
стратегии принятия решений уделяется достаточно много внимания. Балан-
сируя между риском пропустить ошибку и вероятностью впустую потратить
рабочее время сотрудников, специалисты группы тестирования должны
заранее расставить приоритеты: какая из этих двух неприятностей будет
иметь худшие последствия.
Каждый раз, составляя отчет о проблеме, тестировщик оценивает, сто-
ит ли она внесения в базу данных - стоит ли то изменение, которое он
предлагает, времени и усилий разработчиков.
• В каких случаях неверное поведение программы стоит документи-
ровать? Одни тестировщики считают, что документированию подле-
жит любое неверное действие программы. Другие впадают в
противоположную крайность и документируют только те ошибки,
которые вызывают разрушение данных или препятствуют дальней-
шей эксплуатации программы. Если же существует обходной путь
выполнения необходимых действий, они не документируют найден-
ную ошибку.
• Если в программе вам что-то не нравится или вы считаете, что
некоторые пользователи будут недовольны какой-либо ее особенно-
стью, стоит составить отчет и указать в нем, что данная особенность
программы может считаться ее недостатком, или описать изменения,
которые, на ваш взгляд, значительно ее усовершенствуют.
• Если неверное поведение программы похоже на то, которое уже
описано в одном из отчетов, можно не составлять новый отчет до
тех пор, пока в ходе дальнейшего тестирования не будут выявлены
достаточно значительные различия.
• Если не удается воспроизвести увиденную ошибку, но при этом вы
хорошо помните, в чем она заключалась и что вы делали, перед тем
как она проявилась, отчет о ней вполне может оказаться полезным.
• Если в процессе эксплуатации программы вы допускаете слишком
много ошибок, стоит подумать, не является ли их причиной неудоб-
ный или нечеткий интерфейс программы.
Глава 6: Система отслеживания проблем 171
• Стоит ли документировать недостатки интерфейса после того, как
этап разработки, на котором разрешено его изменять, завершен?
Критерии оценки необходимости документирования проблем меняют-
ся по мере продвижения разработки. На ранних стадиях тестирования,
когда программа сбоит каждые несколько минут, возможно, имеет смысл
документировать только наиболее серьезные ошибки. По мере того как
программа будет становиться все более стабильной, вы будете документи-
ровать все больше мелких деталей — все, что покажется вам спорным или
неправильным. Ближе к концу разработки можно снова оставить мелкие
недостатки интерфейса и сконцентрироваться на наиболее серьезных ошиб-
ках кодирования.
Точность и уверенность оценок приходит с опытом. Их критерии при-
ходится несколько корректировать, приспосабливаясь к требованиям каж-
дого нового руководителя проекта или руководителя группы тестирования,
стандартам каждой новой компании. Именно взгляды руководства и выб-
ранная им стратегия разработки в конечном счете определяют принципы
отбора документируемых проблем.
Однако какими бы ни были выбранные критерии, они не гарантируют
для вас полное отсутствие ошибок. Рассмотрим пример, когда найдена
ошибка, очень похожая на одну из тех, отчеты о которых уже включены в
базу данных. Тут возможны два варианта действий:
1. Вы решите не документировать новую ошибку из-за ее сходности с
предыдущей.
• Если вы правы и действительно имеете дело с одной и той же
ошибкой, то сэкономите время сотрудников, читающих ваши
отчеты.
• Однако, если вы ошибаетесь, программист исправит одну ошиб-
ку и оставит другую, поскольку никогда о ней не узнает. В ре-
зультате рискует пользователь — он может получить плохо
работающую программу.
2. Вы решите, что, вероятнее всего, столкнулись с разными ошибками,
и составите новый отчет.
• Если вы правы, обе ошибки будут исправлены.
• Если нет, будет зря затрачено время сотрудников компании: ваше
— на составление отчета, руководителя проекта — на его чтение
и оценку, программиста — на исследование и анализ, в результате
которого он выяснит, что ошибка уже исправлена, и снова ваше
— на повторное тестирование и закрытие отчета. Это риск произ-
водителя — ведь в конечном счете все это выливается для него
в дополнительные материальные и временные затраты.