Перейти к содержимому

Фотография

Зачем нужен тест-план?


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 48

#41 ichthys

ichthys

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • ФИО:Рыбаков Алексей

Отправлено 16 мая 2007 - 08:56

Мне кажется, что содержание тест-плана сильно зависит от профиля деятельности компании.
Если это аутсорсинговая компания, которая предлагает услуги по тестированию - это один документ; если компания выполняет заказные проекты и у них своя QA-служба, то это другой документ; если компания занимается разработкой продукта, то это третий документ.

В каждом из этих случаев тест-план может выполнять разные функции.

Могу рассказать на примере продуктовой разработки.
В моем случае тест-план является продолжением плана изменений в релизе. Как уже писалось ранее он в первую очередь отвечает на вопрос ЧТО ТЕСТИРОВАТЬ. Тест-план - это внутрикорпоративный документ, который находится в свободном доступе. Клиенту он не нужен, т.к. клиента интересует стабильно работающий от версии к версии продукт. Каким способом мы это обеспечиваем ему неинтересно.

Цепочка документов выглядит так:
Road map -> План релиза -> Тест-план -> Test suite -> Test case

Тест-план выполняет следующие функции:
- как и любой план приводит мысли в порядок :good:
- является источником временной оценки
- является источником заданий по разработке кейсов
- способствует развитию коммуникаций внутри компании (в процессе написания/утверждения документа тестировщики контактируют с аналитиками, разработчиками, менеджментом)
- один из механизмов контроля деятельности тестировщиков
  • 0

#42 Case

Case

    Основатель

  • Members
  • PipPipPipPipPipPip
  • 7 071 сообщений
  • ФИО:Панкратов Вячеслав
  • Город:Украина, Киев.

Отправлено 16 мая 2007 - 22:41

Подозреваю что вы говорите о генерации наборов тестов, а не о тест плане - верно?

В том числе и о наборе тестов.


Тогда мы говорим о разных документах, только и всего. В тест плане тестов нет.

А дальше пошёл скорее ряд предположений, чем алгоритм генерации тест плана, в часности стратегии тестирования.

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

И что это даёт? Как по описанию приложения обычными словами автоматически понять какому типу принадлежит приложение? Средства EntityExtraction в целом кое-как справляются с базовыми задачами распознавания Person, Location и ещё некоторых более продвинутых вещей типа Fact - но не более. Вы говорите об автоматическом чтении документа решением генерации тест плана. Я повторюсь, хочу сказать что автоматически генерировать его нереально, ибо нет решений понимающих текст.

Тот же перечень тестируемых и нетестируемых модулей (Test Coverage/Scope) можно получить по следующему принципу. В тесткейсах где-то в заголовке завести (если не было) поле вроде Component, которое описывает ту часть приложения, которая затрагивается данным тесткейсом. На генератор ставится фильтр по компонентам. Соответственно, компоненты, которые по фильтру проходят в план, ставятся в перечень тестируемых компонентов, остальные - в перечень нетестируемых.

Всё бы хорошо, но вы предлагаете по имеющимся тестам генери ровать статистику и просто показать что не покрыто тестами. То есть после того как тесты были написаны. А к пониманию тестируемых и нетестируемых требований это отношения не имеет, потом что выделить нетестируемые требования надо до того как мы начали писать тесты.

Далее, если брать приведенную вами ссылку на эссе Алексея Баранцева (а я иду сейчас по данной работе), то там следует пункт "Подход к тестированию". Тип тестирования можно либо зафиксировать, либо отразить определенной структурой каталогов (например, в отдельной папке хранить системные тесты, отдельно юнит, интеграционные и т.д.). Задав фильтр, мы можем определить, какие тесткейсы попали в тестплан. На основании этих данных можно все тесткейсы сгруппировать по типу тестирования.

Погодите, коллега. :)

Вы приводите техническое описание системы контроля процесса тестирования и описываете тест план просто как один из отчётов, который по тому что есть в системе просто покажет что есть и чего нет. Папки надо создать, чтобы их создать надо понять какие типы тестов будут - это и есть та часть работы которая в данный момент неавтоматизируема - то есть никто кроме человека её не сделает.

Загвоздка только в том, что тест план пишется до того как созданы тесты, как созданы папки отвечающие типам тестом - пишется ровно для того, чтобы всё это и понять и зафиксировать.

Дальше вы приводите техническое описание системы управления процессом тестирования, которая позволяет создавая элемекнты системы (по сути и планируя тестирования) получить потом документ, который можно назвать тест планом. Подход скажу честно интересный - для меня наверное, даже неочевидный и заставляющий подумать-покопаться, но вопрос лежит уровнем выше.

Мой поинт прост:

Планирование тестирования как активность по выявлению подходов к тестированию на основе понимания и анализа существующих проектных артефактов - суть задача выполняемая только человеком, всё остальное вторично и может быть автоматизировано. Решение принимается человеком, фиксируется инструментом - тут и спорить нечего.


  • 0
Слава Панкратов
Редактор портала www.it4business.ru

#43 Case

Case

    Основатель

  • Members
  • PipPipPipPipPipPip
  • 7 071 сообщений
  • ФИО:Панкратов Вячеслав
  • Город:Украина, Киев.

Отправлено 16 мая 2007 - 22:43

У нас в компании есть 2 документа создаваемые последовательно: тест план и тест сет. Тест план - это план планом: с описанием областей тестирования, сроков, рисков, расписания и прочего. Тест сет - набор тесткейсов. По текущим инструкциям тест сет создается после появления тест плана и содержит тесты необходимые для выполнения задач поставленных в плане. И никакой путаницы  :help:

Аналогично :help:

Есть план как стратегия и есть набор тестов, реализующий заданную планом стратегию.
  • 0
Слава Панкратов
Редактор портала www.it4business.ru

#44 Case

Case

    Основатель

  • Members
  • PipPipPipPipPipPip
  • 7 071 сообщений
  • ФИО:Панкратов Вячеслав
  • Город:Украина, Киев.

Отправлено 16 мая 2007 - 22:44

Тест-план - это внутрикорпоративный документ, который находится в свободном доступе. Клиенту он не нужен, т.к. клиента интересует стабильно работающий от версии к версии продукт. Каким способом мы это обеспечиваем ему неинтересно.

Бывает и так и очень часто, но бывает когда тест план и план проекта являются точками обсуждений затрат на тестирование, разработку и как результата стоимость всего проекта - и тут кастомер принимает участие.
  • 0
Слава Панкратов
Редактор портала www.it4business.ru

#45 SALar

SALar

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 2 298 сообщений
  • Город:Москва


Отправлено 17 мая 2007 - 13:46

Если идею генератора предложить человеку, который обычно это все руками делает, то он только будет рад.

Просмотр сообщения

Я делаю. Мне этот инструмент даже не бесполезен, а вреден.

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

Просмотр сообщения

Не будет заметен.

И, вообще,

При проектировании любая техника сложнее "CRC-карточек" [B87] считается слишком сложной и не используется [Co94].
http://www.rsdn.ru/a...s/compeople.xml


  • 0

-- 

Сергей Мартыненко

Блог 255 ступеней (байки для оруженосца)

facebook (Дети диаграммы Ганта)

ВебПосиделки клуба имени Френсиса Бэкона 

 


#46 KaNoN

KaNoN

    АЦЦКИЙ СОТОНА

  • Members
  • PipPipPipPipPipPip
  • 1 260 сообщений
  • ФИО:Колесник Николай
  • Город:Днепропетровск > Киев > Лондон

Отправлено 18 мая 2007 - 06:31

Тогда мы говорим о разных документах, только и всего. В тест плане тестов нет.


В тестплане вполне может быть перечисление тестов или их групп. Я об этом

А дальше пошёл скорее ряд предположений, чем алгоритм генерации тест плана, в часности стратегии тестирования.

Такие вещи обычно генерируются по составляющим, а не всем скопом. Соответственно, алгоритм представляет собой набор решений частных подзадач.

И что это даёт? Как по описанию приложения обычными словами автоматически понять какому типу принадлежит приложение? Средства EntityExtraction в целом кое-как справляются с базовыми задачами распознавания Person, Location и ещё некоторых более продвинутых вещей типа Fact - но не более. Вы говорите об автоматическом чтении документа решением генерации тест плана. Я повторюсь, хочу сказать что автоматически генерировать его нереально, ибо нет решений понимающих текст.

Зато есть решения, которые позволяют выделять подстроки :help: А это задача на порядки проще "компилятора английского языка".

Тот же перечень тестируемых и нетестируемых модулей (Test Coverage/Scope) можно получить по следующему принципу. В тесткейсах где-то в заголовке завести (если не было) поле вроде Component, которое описывает ту часть приложения, которая затрагивается данным тесткейсом. На генератор ставится фильтр по компонентам. Соответственно, компоненты, которые по фильтру проходят в план, ставятся в перечень тестируемых компонентов, остальные - в перечень нетестируемых.


Всё бы хорошо, но вы предлагаете по имеющимся тестам генери ровать статистику и просто показать что не покрыто тестами. То есть после того как тесты были написаны. А к пониманию тестируемых и нетестируемых требований это отношения не имеет, потом что выделить нетестируемые требования надо до того как мы начали писать тесты.


Ну не совсем это статистика. Это перечень компонентов, которые будут тестироваться и которые нет. То же самое и для требований. А насчет очередности выделения требований и написания тестов см. ниже.

Далее, если брать приведенную вами ссылку на эссе Алексея Баранцева (а я иду сейчас по данной работе), то там следует пункт "Подход к тестированию". Тип тестирования можно либо зафиксировать, либо отразить определенной структурой каталогов (например, в отдельной папке хранить системные тесты, отдельно юнит, интеграционные и т.д.). Задав фильтр, мы можем определить, какие тесткейсы попали в тестплан. На основании этих данных можно все тесткейсы сгруппировать по типу тестирования.

Погодите, коллега. :)

Вы приводите техническое описание системы контроля процесса тестирования и описываете тест план просто как один из отчётов, который по тому что есть в системе просто покажет что есть и чего нет. Папки надо создать, чтобы их создать надо понять какие типы тестов будут - это и есть та часть работы которая в данный момент неавтоматизируема - то есть никто кроме человека её не сделает.

Загвоздка только в том, что тест план пишется до того как созданы тесты, как созданы папки отвечающие типам тестом - пишется ровно для того, чтобы всё это и понять и зафиксировать.

Дальше вы приводите техническое описание системы управления процессом тестирования, которая позволяет создавая элемекнты системы (по сути и планируя тестирования) получить потом документ, который можно назвать тест планом. Подход скажу честно интересный - для меня наверное, даже неочевидный и заставляющий подумать-покопаться, но вопрос лежит уровнем выше.


Есть разные подходы к созданию тестплана. В частности можно все приложение (его функциональность) представить в виде таблицы, в которой указываются все (или основные) компоненты тестируемой системы, а также трассировка по тесткейсам и требованиям. То есть тестплана как такового еще нет, но есть документ, описывающий весь предполагаемый объем работ. Эта схема применялась для автоматизиции тестирования одного приложения, соответственно, на той стадии, когда такая таблица разрабатывалась, тестплан не играл ключевой роли, так как начальная стадия автоматизации - это разработка. То есть по этой схему вначале разрабатывались тесты, потом определялось, что из этого всего можно автоматизировать, а что только вручную. Также снимались дополнительные данные. На основании всего этого составлялся тестплан. Я вполне могу согласиться с тем, что тестплан составляется изначально, но в описываемом мною случае проект поставлялся удаленному заказчику и ему главное было, чтобы вся необходимая документация имела место. То есть он уже получал полностью готовый пакет для тестирования своего приложения. А нам для автоматизации тестов тестплан особо не был нужен, так как заказчиком уже было определено покрытие, которое надо обеспечить, типы тестов и прочее.

Мой поинт прост:

Планирование тестирования как активность по выявлению подходов к тестированию на основе понимания и анализа существующих проектных артефактов - суть задача выполняемая только человеком, всё остальное вторично и может быть автоматизировано. Решение принимается человеком, фиксируется инструментом - тут и спорить нечего.

Просмотр сообщения


Естественно, что решение принимают люди. Когда решения начнут принимать машины, то мы получим Терминатора или Матрицу.
  • 0

#47 KaNoN

KaNoN

    АЦЦКИЙ СОТОНА

  • Members
  • PipPipPipPipPipPip
  • 1 260 сообщений
  • ФИО:Колесник Николай
  • Город:Днепропетровск > Киев > Лондон

Отправлено 18 мая 2007 - 07:17

Если идею генератора предложить человеку, который обычно это все руками делает, то он только будет рад.

Просмотр сообщения

Я делаю. Мне этот инструмент даже не бесполезен, а вреден.


Возможно это даже вопрос религии. Хотя проблемы могут быть и в генераторе. Зачастую плохой генератор еще хуже, чем никакого. Но ведь можно сделать и хороший генератор.

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

Просмотр сообщения

Не будет заметен.


Смотря как применять. У меня уже есть достаточно успешный опыт применения генераторов кода, а также генераторов различной сопроводительной документации. Какой от этого был эффект:

1) Програмный код имел очень строгий формат, который позволял достаточно хорошо читать этот самый код и понимать, что на какой стадии происходит

2) Некоторые рутинные радачи делались считанные секунды вместо 1-2 часов, что опять же позволяло поддерживать приемлемое качество кода при минимальных временных затратах.

3) Шаблонность структур, наличие жестких стандартов оформления кода позволило выработать алгоритм считывания атрибутов того или иного компонента. Это в свою очередь позволило генерировать справочную информацию по разработанному фреймворку за считанные секунды. Причем, для того, чтобы обновить справку исходя из новых изменений во фреймворке достаточно было перезапустить генератор

4) Наличие строгих спецификаций форматов файлов позволило создать генераторы, собирающие различные данные и группирующие в нужные структуры. Это позволило значительную часть документов создавать автоматически.

Автоматизиция подобных процессов позволит не концентрировать свое внимание на каких-то однотипных вещах, а заниматься наиболее наукоемкими задачами не отвлекаясь по сторонам. Так я могу заниматься непосредственно кодированием скриптов, зная, что нужный формат уже сгенерирован до меня. Мне не нужно тратить длительное время на набивку документов (особенно отчетного характера), когда я могу нажать на кнопку и он у меня уже есть. И времени тратится на порядки меньше и эффект ощущается при многократном использовании генератора
  • 0

#48 vass

vass

    Опытный участник

  • Members
  • PipPipPipPip
  • 298 сообщений
  • ФИО:Василий

Отправлено 18 мая 2007 - 08:28

мнэээ.. в качестве IMHO:
такие генераторы больше используются для анализа "что мы сейчас сделали/несделали" (т.е. хелп разработчика, отчеты менеджера и т.д.), и конечно возможно их использовать для создания части тестплана "снизу вверх". Это в принципе неплохо для случаев малых/неформальных проектов, когда тестсет(ы) уже есть, а тут понадобился формальный тестплан - ну и чтобы меньше было рутины, кое-что автоматически сделать.
Но в сложных/формальных случаях - просто неоткуда будет брать тесткейсы ДО того, как будет написан тестплан.
  • 0

#49 dimasoft

dimasoft

    Новый участник

  • Members
  • Pip
  • 10 сообщений
  • ФИО:Мугтасимов Дмитрий Азатович
  • Город:Москва

Отправлено 20 мая 2007 - 23:04

имееется допустим некий набор тесткейсов, условно говоря покрывающий всю функциональность приложения. данный набор проверяется на каждом билде.
собственно отсюда вопрос, зачем нужен тест-план? и для кого он делается? для тестировщика, босса, заказчика? или просто потому что так надо? :)
интересуют как общие мысли на тему так и примеры из личной практики. Спасибо.

Просмотр сообщения


План тестирования нужен для следующих целей:
1. Помочь автору сформулировать условия тестирования и таким образом понять что, как (стратегически) и с какими ограничениями он будет тестировать.
2. Сформулировать условия тестирования на уровне абстракции понятном менеджменту проекта для их согласования.
3. Использование плана в качестве руководства к действию на всех этапах тестирования.
4. Использование плана для ввода в курс дел новых сотрудников на проекте.
  • 0
С уважением,
Дмитрий Мугтасимов.


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных