|
Персональные инструменты |
|||
|
TestLinkМатериал из CustisWikiВерсия от 23:02, 27 августа 2007; StasFomin (обсуждение | вклад) (начал новую версию на основе детального перевода документации.) Общая информация TestLink это система управления тестами с веб-интерфейсом. Вот типичный пример использования системы:
Три основных ключевых понятия: Проект, План тестирования и Пользователь. Все остальные данные представляют собой комбинации, отношения и атрибуты этих трех сущностей. Сначала, определим пару терминов, из профессионального лексикона тестировщиков, используемых в этой документации. Содержание
Основные понятияТест-кейс (Test Case)представляет собой элементарную задачу по тестированию, сформулированную для человека, в виде сценария, состоящего из последовательности шагов, и ожидаемых результатов. Тест-кейс являются фундаментальной сущностью TestLink'а. Тест-сюита (Test Case Suite)группирует тест-кейсы в более крупные блоки, и используются для логической структуризации спецификации теста (Test Specification). План тестирования (Test Plan)создан для исполнения тест-кейсов. План тестирования состоит из тест-кейсов одного или нескольких проектов. План тестирования включает в себя Сборки (Builds), Вехи (Milestones), назначения тестов тестировщикам, и результы тестов. Проект (Test Project) включает в себя тестовую спецификацию (Test Specification) с тест-кейсами, требования и ключевые слова. Будучи создан, проект более не удаляется, хотя может быть деактивирован. Поддерживается версионность проекта. Пользователи внутри проекта получают определенную позицию-роль. Пользователь ''(User): каждый пользователь имеет роль, которая определяет доступные для него функции системы.
Как уже говорилось, тесты могут быть структурированы с помощью групп тестов, которые могут включать элементарные тесты или другие группы тестов. Создание тест-кейсовМинимальная структура, необходимая тестировщику: это одна группа тестов состоящая из одного теста. Поэтому в каждом новом проекте нужно создать по крайней мере одну группу тестов (при её создании желательно заполнить описание). Далее можно создавать другие группы тестов и включать их друг в друга. Тесты можно создавать, копировать и перемещать из одной группы в другую. Основные атрибуты теста:
Удаление тестовТесты и группы тестов могут быть удалены из планов тестирования пользователями с правами «lead». Однако удаление тестов приедет к удалению всех связанных результатов их выполнения, поэтому очень рекомендуется никогда этого не делать, разве что сразу после ошибочного создания теста. Связь с требованиямиЕсли включить в проекте включить функциональность требований, то тесты могут быть связаны с зарегистрированными требованиями к ПО отношением «многие ко многим».
Использование ключевых словКлючевые слова дают пользователям дополнительное «измерение с иерархией» при классификации тестов. С помощью ключевых слов удобно организовывать специфические коллекции тестов, например можно определить наборы:
Создание ключевых словКлючевые слова могут быть созданы пользователями с правами «mgt_modify_key», которыми по умолчанию владеют только имеющие роль «Leaders». Как только ключевое слово или группировка ключевых слов создана, их можно привязывать к тестам. Привязка ключевых словКлючевые слова можно массово привязывать к тестам через страницу привязки ключевых слов (ссылка «Привязать ключевые слова» с главной страницы) или индивидуально для каждого теста при управлении тестами. Фильтрация по ключевому словуПользователи имеют возможность фильтрации (отбора) по ключевым словам:
ВведениеЧтобы доказать, что программная система сделана как задумано, тестировщики используют тестирование основанное на требованиях. Для каждого требования, они проектируют один или более тестов. После выполнения тестов, руководитель тестирования может сформировать отчет, о том, какие требования покрыты тестированием, какие требования успешно проверены и выполнение каких требований провалено. Основываясь на этой информации, заказчик и остальные заинтересованные ЛПР (лица принимающие решения) решают, может ли система быть выпущена в эксплуатацию, или нужны дополнительные доработки и тестирование. При принятии решения, учитывается важность требований и учет требованиями технологических рисков проекта. Такой подход дает следующие преимущества:
Как включить функциональность требованийРегистрировать или не регистрировать требования решается индивидуально для каждого проекта. Т.е. администратор должен специально включить эту функциональность для каждого проекта, где она необходима (Ссылка «Управление проектами» на главной странице). Относительно требований есть два уровня пользовательских прав. Большинство ролей пользовательских ролей могут видеть требования, но не могут их редактировать, а избранные роли могут их также и править (См. Раздел о пользователях). Спецификации требованийТребования группируются в один или более системных/программных/пользовательских спецификаций требований. Файл:Image 0 Illustration 1: Dependencies between requirement related objects
Создание документа с требованиями:
Каждая спецификация требований имеет свою собственную статистику и отчет. Содержимое спецификаций — соответствующий набор требований, может быть отформатирован для печати, с помощью кнопки «Печать» (логотипы, копирайты, предупреждение о конфиденциальности — всё это настраивает администратор через конфигурационные файлы). ТребованияКаждое требование имеет:
Требования можно создавать/править/удалять вручную, через интерфейс TestLink'а, или импортировать из CSV-файла. Импорт требованийTestLink поддерживает два типа CSV-файлов:
При импорте заголовки проверяются на уникальность, а конфликты предлагается разрешить тремя способами: обновление существующих требований, создание требований-дубликатов с таким же заголовком и игнорирование (пропуск) требований-дубликатов при импорте. Связь требований с тест-кейсамиМежду тест-кейсами и требованиями можно устанавливать «многие ко многим». Т.е вы можете не связывать тест-кейс или требование вообще, связывать тест-кейс с одним или более требованиями, и связывать требование с одним или более тест-кейсами. Чтобы попасть на страницу связывания тест-кейсов с требованиями, нажмите ссылку «привязать требования» на главной странице. Отчет о покрытии спецификации можно получить кнопкой «Анализировать» на странице спецификации требований. Отчеты по требованиямЧтобы попасть на страницу отчетов и метрик, нужно использовать меню «Отчеты». На этой странице будет представлен анализ требований в текущих спецификации требований и плане тестирования. Т.е. для каждого требования обрабатываются последние результаты тестов в актуальном плане тестирования, и для каждого требования выбирается наиболее важный результат, а результаты по убыванию важности таковы: «сбой», «заблокирован», «не проверяли», «проверено». Пример: Некоторое требование покрыто тремя тестами. Два из них включены в текущую группу тестов. Один тест проверен и один не проверялся для «сборки 1». Соответственно это требование — «не проверялось». В «сборке 2» наконец проверили второй тест с успешным результатом, и отчет для этого требования стал «проверено».
Как уже говорилось, проект — это ключевая сущность TestLink'а. Проекты — это те продукты и решения, которые выпускает ваша компания. Причем проекты желательно определить так, чтобы несмотря на эволюцию функциональности (и других свойств), основной массив свойств должен сохранять постоянство. Т.е. неправильно заводить слишком «широкие» проекты, такие как «Вся работа компании», или даже «веб-разработка». Проекты включают документированные требования, спецификации тестов, планы тестирования и ключевые слова. Создание новых проектовДля создания нового проекта требуются уровень прав «admin». Каждый проект должен иметь уникальное имя. Также, если соответствующая функциональность включена в конфигурационном файле, каждому проекту можно присвоить свой собственный цвет фона, чтобы надежно визуально отличать их друг от друга. Например, с помощью такой цветовой градации можно отличать важные проекты от некритичных. Несколько замечаний:
Правка и удаление проектовДля редактирования и удаления проекта требуются уровень прав «admin». Можно изменить имя проекта, цвет фона (если такая функциональность включена) и доступность функциональности требований. Если проект устарел, его можно деактивировать — при этом он для всех кроме администратора, пропадет из верхнего навигационного списка выбора (администратор будет видеть такие проекты помеченными астериском '*'). Можно также удалить проект, с удалением всех связанных данных из БД. Но это действие необратимо и мы настоятельно рекомендуем использовать деактивацию вместо удаления.
План тестирования имеет имя, описание, набор выбранных тестов, сборки, результаты тестирования, вехи, назначения тестировщикам и определения приоритетов. Разумно в описании плана, включать информацию о структуре команды тестировщиков, о видах тестирования, риски, что тестируется, что находится вне тестирования, подходы используемые при тестировании, и т.д.
Создание и удаление планов тестированияПланы тестирования могут создать пользователи с уровнем привилегий «lead», на странице «Управление планами тестирования» (См. соответствующую ссылку на главной странице). Планы тестирования являются основой для выполнения/прогона тестов. Они состоят из некоторого «среза»-подмножества тестов проекта, выбранных в определенное время. Планы тестирования можно создавать добавляя каждый тест вручную, или копировать-клонировать существующий план тестирования, а далее уже вносить инкрементальные изменения. Права на просмотр планов тестирования выдаются пользователем с правами «lead» на странице «Управление пользователями/Назначить роли проекта». Важно об этом помнить, т.к. это главная причина жалоб тестировщиков, что они «не видят» тестов в проекте. Хотя планы тестирования может удалить пользователь с уровнем привилегий «lead», то так же как и в случае проектов, мы настоятельно не рекомендуем это делать, т.к. необратимо будут уничтожена вся информация о результатах тестирования. Вместо этого, можно деактивировать план тестирования и он также будет скрыт из интерфейса. СборкиСборка это определенный выпуск программного обеспечения. Каждый проект в компании наверняка имеет множество релизов/выпусков/сборок. В TestLink'е, выполнение тестов учитывается отдельно для каждой сборки, в частности, если ни одной сборки нет, выполнять тесты в проекте будет невозможно, и соответственно, будет пустой страница метрик. Управление сборками осуществляется на одноименной странице «Управление сборками», пользователями с правами «lead». Редактировать сборки нельзя, их можно только удалить, кликнув по иконке-«корзине» в таблице-списке зарегистрированных сборок.
Добавление новых тестовПри добавлении тестов определяют шаги тестирования и ожидаемые результаты. Данные из нескольких проектов, могут быть добавлены в один план тестирования. Спецификации тестов могут быть отфильтрованы по ключевым словам (настраивается в навигационной панели). Как только тесты попадают в план тестирования, они определенным образом помечаются. Таким образом, если тест уже импортировался, то при следующем импорте он будет проигнорирован.
Удаление тестов из плана тестированияТесты и группы тестов могут быть убраны из плана тестирования только пользователями с полномочиями «Leader», на странице «Удалить тест(ы)». Но не рекомендуется, кроме как в крайних случаях, удалять тесты из плана тестирования, особенно, если тесты выполнялись, т.к. будет потеряна информация о результатах прогона этих тестов. поэтому ПриоритетыПользователи с правами «Leader» могут для каждого теста назначить ответственного и приоритет, нумеруемый от «A» (наибольший) до «C» (наименьший). Вообще риски и важность задаются на уровне групп тестов. Риски имеют уровни «Низкий», «Высокий», «Средний», а уровни важность нумеруются цифрами «3» (наименьшая важность), «2», «1» (наибольшая важность). А далее, по рискам и важности определяются приоритеты, причем пользователи могут задать, по каким правилам их рассчитывать, т.е. какие комбинации риска и важности (например, «L1», «L2», «L3», «M1», «H2», «M3», «H1», «H2», «H3»), к какому приоритету («A», «B», «C») относятся. Если риски и важность не указывать специально, то по умолчанию используется приоритет «B». Назначение тестов для выполненияНазначение тестов для выполнения влияет и на само выполнение и на страницу отчетов. На странице выполнения пользователи имеют возможность упорядочить выполняемые тесты по ответственному за исполнение. На главной странице отчетов есть таблица, которая показывает сколько тестов выполнено, и осталось осталось выполнить каждому тестировщику.
Общая информацияВыполнение тестов становится возможным, когда:
Выберите требуемый план тестирования на главной странице и перейдите по ссылке «выполнить тесты». Левая панель служит для навигации по группам тестов и их отбора, а также для определения тестируемой сборки. НавигацияНавигационная панель состоит из блока «Параметры выборки» и иерархического дерева с группами тестов. Параметры выборкиЭта таблица позволяет пользователю отбирать тесты для удобства навигации по меньшему множеству перед их выполнением:
Иерархия групп тестовИерархическое меню в навигационной панели состоит из иерархии групп тестов, раскрашенных в соответствии с результатами выполнения. Раскраска дерева: По умолчанию дерево сортируется по результатам выполнения для выбранной в пользователем сборки. Примеры:
ВыполнениеСостояние тестаВыполнение — это процесс присвоения результата («Блокирован», «Не запущен», «Сбой», «Пройден») для некоторых выбранных теста и сборки. Названия состояний-результатов, в общем, достаточно говорящие, разве что поясним, что «Блокирован» означает невозможность по любой причине пройти этот тест (например, тестируемый объект не доступен или не развернут на требуемой платформе и т.п.). Ввод результатов тестовСтраница результатов тестирования показывается справа при выборе в навигационной панели некоторого теста или группы тестов. Сначала показан заголовок теста, затем желтый блок с сценарием тестирования и цветной блок с результатом теста.
Реализация дополнительных (пользовательских) полей, основана на моделях реализации настраиваемых полей в проектах «Mantis» (http://www.mantisbt.org/) и «Dotproject» (http://www.dotproject.net/). Пользовательские поля определяются единым образом для всей системы (а не для отдельного проекта). Поэтому вы не можете определить несколько пользовательских полей с одинаковым именем. После определения дополнительного поля, можно привязать его к одному или более проектам, где предполагается его использование. Атрибуты поля: «Показывать при спецификации теста», «Показывать при выполнении теста» (смысл понятен из названий) и «Разрешить при спецификации теста», «Разрешить при выполнении теста» — можно менять значения в этом поле при спецификации или выполнении. Примеры. Поле «Дополнительные заметки» нужно редактировать только при спецификации теста, и нельзя менять в процессе выполнения (хотя можно и показать), а поле «Проверено на операционной системе» нужно задавать только при выполнении теста, а на этапе спецификации теста совершенно бесполезно.
На страницу отчетов можно перейти по очевидной ссылке «Отчеты». Показываться имеющиеся отчеты и метрики будут для текущего плана тестирования (в данный момент нет отчетов, которые агрегируют информацию из нескольких планов тестирования), поэтому нужно выбрать нужный план тестирования еще до перехода на страницу отчетов. Левая панель страницы предназначена для выбора типа отчета и его параметров, а на правой находится либо инструкция по формированию отчетов, либо сформированных отчет. Параметры отчетов следующие: Активная сборка: Этот параметр действует только на отчет «Общий статус сборки», показывающий текущее состояние плана тестирования для выбранной сборки. Формат отчета: все отчеты (кроме диаграмм) могут быть сформированы:
Далее, мы рассмотрим десяток доступных отчетов более подробно.
Общий статус сборкиФиг знает. Не уверен, что написана актуальная информация. This report shows the detailed results for a particular build defined by the “Active Build” control. It only takes into account executions performed on the selected build. The following tables are displayed: Results by top level Test Suites Lists the results of each top level suite. Total cases, passed, failed, blocked, not run, and percent completed are listed. A “completed” test case is one that has been marked pass, fail, or block. Results for top level suites include all children suites. Results by Test Suite Lists metrics for all suites in test plan, not just top level suites. Results By Keyword Lists all keywords that are assigned to cases in the current test plan, and the results associated with them. Общие метрики плана тестированияПоказывает наиболее актуальное состояние (в смысле последней выполненной сборки) плана тестирования в срезах по группам тестов, тестировщикам и ключевым словам. Вообще понятие «последнего результата теста» используется в нескольких отчетах и определяется следующим образом:
Общий статус сборкиПоказывает результаты выполнения для каждой сборки: «Всего тестов», сколько пройдено, провалено, блокировано и не запущено в абсолютной величине и процентах.
Запрос метрикЭтот отчет содержит поисково-запросную форму после заполнения параметров в которой, можно получить отчет по заданным срезам. Страница параметров запроса Можно задать следующие параметры, задающие условие-ограничение на выборку. Полное условие будет «логическое И» над всеми выбранными условиями, если некоторый параметр не задан/не выбран — то он не влияет на выборку, и выбираются тесты, вне зависимости от его значения. Ключевое слово: можно выбрать только одно ключевое слово и или не выбрать ни одного. Владелец: можно выбрать одного владельца-ответственного или не выбрать ни одного. В данный момент нет функциональности поиска по «неназначенным» тестам. Группа тестов: можно выбрать любое количество групп (от нуля). Сборки: можно выбрать любое количество сборок (от нуля). Последний результат: выбирается состояние последнего результата по тесту (можно выбрать любое число состояний от нуля). Нажмите кнопку «Выполнить запрос», для получения результата. На странице-отчете показаны:
Отчеты «Тесты Проваленные/Блокированные/Не запущенные»Выводятся соответствующие списки тестов, для проваленных — с информацией о последнем запуске, и (опционально) с информацией о зарегистрированных багах.
Отчет по тестамПоказывает результаты всех тестов для всех сборок. Отчет, как правило получается большим, поэтому рекомендуем выгружать его в Excel, для последующего анализа. ДиаграммыДля просмотра диаграмм (технология предоставлена http://www.maani.us) требуется поддержка Flash в броузере. Анимированной графикой показываются следующие диаграммы:
Всего багов по каждому тестуЕсли Testlink интегрирован с системой баг-контроля (системой управления ошибками), то появляется этот отчет, показывающий сводную информацию о зарегистрированных багах: «Открыто», «Исправленных», «Всего», «Тестов с багами», плюс детальная информация о каждом тесте с зарегистрированными багами, с ссылками на эти баги в системе управления ошибками. |
||