среда, 3 сентября 2008 г.

Артефакты, необходимые для тестирования

Рецензент: Сергей Мартыненко

Дисклаймер. Данная статья не является претензией на объективность, а отражает только мое сугубо личное мнение. Также прошу обратить внимание на то, что мое мнение не является статичным и может меняться. Статья написана только для того, чтобы не отвечать много раз на одни и те же вопросы, а просто дать ссылку.

Итак попробую ответить на вопрос: какие артефакты необходимы для обеспечения процесса тестирования (имеется ввиду разрабатываемые самим тестировщиком).

Я выделяю несколько артефактов:

  1. План тестирования (Test plan)

  2. Тестовый сценарий (Test-case)

  3. Наборы тестовых сценариев (Test script or Test suite)

    • Набор тестовых сценариев для Smoke-test

    • План приёмосдаточных испытаний (ПСИ)



  4. Описание дефектов

  5. Отчет о тестировании


Описание дефектов и отчет о тестировании в данной статье не рассматриваются, так как это уже результаты и поэтому про них напишу отдельно.

План тестирования


Есть как минимум два общепринятых понимания этого документа:

  1. Документ описывающий кто, что, когда и как будет тестироваться

  2. Документ описывающий все необходимые для проверки приложения тесты.


Говоря план тестирования, я подразумеваю именно первый вариант толкования.
Для того чтобы посмотреть пример плана тестирования можно:

Тестовый сценарий(тест)


Тестовый сценарий - это описание начальных условий, входных данных, действий пользователя и ожидаемого результата.
Хорошая практика - написание тестовых сценариев на основании вариантов использования (Use cases).

Тестовый сценарий является как атом мельчайшей частичкой для ниже описанных документов (но его как и атом можно разбить на условия, входные данные, шаги, результаты)

Варианты названий:

  • Атомарный тест

  • Тестовый вариант

  • Вариант тестирования

  • Тестовый случай


Наборы тестовых сценариев


Это тестовые сценарии сгруппированные по некоему признаку (например тестируемой функциональности). Они могут быть как зависящими от последовательности выполнения (результат выполнения предыдущего является предварительным условием для следующего (Test script)), так и независимыми (Test suite).
Наиболее часто выделяемыми наборами являются: Набор тестовых сценариев для Smoke-test и План приёмо-сдаточных испытаний.

Набор тестовых сценариев для Smoke-test


Если честно, то я не знаю адекватного перевода на русский данного термина. Иногда используется перевод "Дымчатое тестирование", но он вызывает у меня стойкое отвращение.

Набор тестовых сценариев для Smoke-test - это документ, включающий в себя набор определенных тестовых сценариев, покрывающих основную функциональность объекта или системы. Цель проведения Smoke-test - убедиться в том, что ключевые функции программы работают, не вникая в подробности.
Хорошая практика - прием билда в тестирование на основании прохождения Smoke-test. Также зачастую в качестве такого теста используют ежедневную сборку с обязательным прохождением unit тестов.
Комментарий: Ежедневная сборка без unit тестов не может считаться как Smoke test. Это называется: "Ух ты компилицо"

План приёмо-сдаточных испытаний (ПСИ)


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

В общем случае подмножества тестов выглядят так как на рисунке.



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

4 комментария:

  1. Smoke = дым.

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

    То есть, это первейший тест, ни на что особенно не претендующий.

    Отсюда и термин: "первичное тестирование". Дымчатым его можно не называть :)

    ОтветитьУдалить
  2. Александр Лобач4 сентября 2008 г., 0:50

    Дословный перевод то я знаю. И знаю как минимум еще 3 варианта возникновения данного термина. Но все равно предпочитаю использовать именно англоязычный термин.

    ОтветитьУдалить
  3. Гм, а чем Вам "проверка на дым" вместо smoke test не подходит?

    ОтветитьУдалить
  4. Evgenij Lozovan
    Наверное, просто слух режет.
    Уж очень привык к англоязычным терминам.

    ОтветитьУдалить