Сценарии использования UniTesK Trace Tools Eclipse Plug-In, обеспечивающего представление и анализ результатов запуска тестов. Легенда: не расписано, не реализовано 1. Результатом работы теста является трасса – файл с расширением ‘utt’. 2. Для просмотра графического представления трассы служит стандартное действие Open, активируемое на одной из трасс. См. документ описывающий use case’ы визуализатора трассы 3. Для генерации статистического отчета по трассе или накопительного отчета по группе трасс служит действие action.Trace.GenerateReport. 3.1. После активации выполнения действия пользователю предлагается модальный диалог, в котором имеются следующие настройки: 3.1.1. производить генерацию отчета во временную или пользовательскую директорию (по умолчанию во временную) 3.1.2. пользовательская директория, предлагаемая по умолчанию, формируется следующим образом: в случае создания отчета для одной трассы – “<полное имя трассы без расширения> UniTesK Report” при создании накопительного или сравнительного отчета берется общая для всех трасс директория (все трассы в одной директории), общий для всех трасс проект (все трассы в одном проекте) или общее рабочее пространство, и к выбранной альтернативе добавляется: в случае создания накопительного отчета - “/UniTesK Summary Report” в случае создания сравнительного отчета – “/UniTesK Compare Report” 3.1.3. в случае генерации во временную директорию открывать уже имеющийся для данного набора входных параметров отчет или генерировать отчет заново (по умолчанию открывать имеющийся) 3.1.4. в случае генерации в пользовательскую директорию открывать ли отчет в браузере после окончания генерации (по умолчанию открывать) 3.1.5. использовать для показа отчета локальный или внешний браузер (по умолчанию локальный) 3.1.6. настройки для опций –f –ah –ar –msfc генератора отчета (по умолчанию 0, 0, 2, 20 соответственно) 3.1.7. открывать данный диалог, только если нажат Shift (по умолчанию открывать всегда). Так же данная настройка сохраняется в prefs.Unitesk.GenerateReport.ShowDialogWhenShiftPressed 3.2. При нажатии в диалоге кнопки Restore Defaults всем настройкам возвращаются значения по умолчанию 3.3. При нажатии кнопки Cancel операция генерации отчета прерывается, все изменения в диалоге теряются 3.4. При нажатии кнопки Generate изменения в настройках диалога сохраняются, в случае выбора пользовательской директории, отличной от предлагаемой по умолчанию, она заносится в список пользовательских директорий (при следующем вызове операции будут действовать последние сохраненные настройки ) и запускается генерация отчета 3.5. Стадия генерации отчета может быть достаточно продолжительной, поэтому она выполняется асинхронно. Генератор отчета запускается используя стандартный для Eclipse’а механизм запуска асинхронных заданий. Для просмотра прогресса выполнения генерации отчета следует использовать стандартное Progress view. В указанном view так же имеется возможность досрочно прервать генерацию. 3.6. Для того, чтобы удалить все сгенерированные отчеты из временного каталога, служит действие action.ClearReportsCache, активируемое со страницы настроек prefs.Unitesk. 4. Трассы, создаваемые при запуске теста, привязываются к тесту по местоположению и имени: создаются в каталоге, где находится тест и имеют имя <имя теста>.<номерной суффикс>.utt. Для того чтобы открыть тест, соответствующий трассе, служит действие action.Trace.OpenTest. 5. Для быстрого просмотра всех трасс имеющихся в workspace’е, служит view.Unitesk.TestResults. 5.1. Указанное view представляет собой таблицу из четырех колонок: Name - имя трассы без расширения; In Folder – каталог, где располагается трасса, вида <project name>/<folder in project>; Date – дата создания трассы; Size – размер трассы. В каждой строке таблицы визуализируется proxy объект для объекта file.Trace. 5.2. По умолчанию, сортировка в таблице осуществляется по дате в убывающем порядке. 5.3. Сортировка может быть изменена как нажатием на заголовки колонок таблицы, так и вызовом действия action.TestResults.Sorting. 5.4. При нажатии на заголовок колонки устанавливается сортировка по данной колонке в возрастающем порядке. При повторном нажатии на заголовок порядок сортировки меняется на противоположный. Если сортировка неоднозначна, то в сортировке принимают участие колонки, которые участвовали в сортировке ранее. 5.5. Установки сортировки сохраняются между рабочими сессиями. 5.6. На view может быть наложен фильтр, вызовом действия action.TestResults.Filters, где можно выбрать тип фильтрации: 5.6.1. On any resource – фильтрация отсутствует 5.6.2. On any resources in same project – если не выделено ни одного ресурса, то показывается результат предыдущей фильтрации, если выделен ряд ресурсов, то показываются трассы принадлежащие проектам выделенных ресурсов 5.6.3. On selected resource only - если не выделено ни одного ресурса, то показывается результат предыдущей фильтрации, если выделен ряд ресурсов, то показываются трассы лежащие непосредственно в выделенных ресурсах контейнерах. Тест является контейнером для всех своих трасс. Трасса является контейнером для себя. 5.6.4. On selected resource and its children - если не выделено ни одного ресурса, то показывается резултат предыдущей фильтрации, если выделен ряд ресурсов, то показываются трассы лежащие в выделенных ресурсах контейнерах (поиск ведется рекурсивно). Тест является контейнером для всех своих трасс. Трасса является контейнером для себя. 5.6.5. On working set – если не указан working set, то показываются все трассы, иначе показываются трассы, входящие в выбранный working set. 5.7. По умолчанию выставляется тип фильтрации ‘On any resource'. 5.8. Настройки фильтрации сохраняются между сессиями. 5.9. Для удаления одной или нескольких трасс непосредственно в рассматриваемом view служит действие action.TestResults.Delete, которое отображается в стандартное действие Delete. 6. Для набора трасс доступно действие action.Trace.AddToSet, представляющее собой pulldown меню. В выпадающем списке пользователю предоставляется список имею- щихся множеств и возможность поместить трассы в новое множество с автоматически сгенерированным именем. После выполнения действия активируется view.Unitesk.TestResultSets.Указанное view служит для группировки тестовых результатов (трасс), по определенному признаку, например, результаты тестирования заданного релиза продукта и представляет собой двухуровневое дерево: proxy объект для view.Unitesk.TestResultSets.Set, proxy объект для file.Trace. 6.1. Для добавления набора трасс в новое множество с автоматически сгенерированным именем пользователь может выделить трассы и, используя drag’n’drop, перенести его на пустую часть view.Unitesk.TestResultSets. Если в качестве цели drag’n’drop пользователь выберет существующее множество, то трассы будут добавлены в него. 6.2. Если набор трасс выбран вне view.Unitesk.TestResultSets, то drag’n’drop имеет только один режим copy и трассы просто добавляются в выбранное множество. В случае, когда набор трасс выбран внутри view.Unitesk.TestResultSets доступно два режима move (по умолчанию) и copy. В первом случае (move) выбранные трассы удаляются из своих множеств и добавляются в выбранное множество. Во втором случае (copy) трассы просто добавляются в новое множество. 6.3. Действие action.TestResultSets.Remove может быть применено как к трассе, так и к множеству трасс, при этом либо трасса удаляется из множества, либо удаляется целиком множество. Физически удаления трассы не происходит. 6.4. Действие action.TestResultSets.RenameSet служит для переименования множества тестовых результатов. Множеству не может быть присвоено имя длиннее чем 128 символов, пробелы в начале и конце имени игнорируются. 6.5. Для сравнения множества тестовых результатов служит действие action.TestResultSets.GenerateCompareReport, логика работы которого полностью совпадает с логикой выполнения действия action.Trace.GenerateReport, только вместо накопительного отчета генерируется сравнительный. 6.6. Множества тестовых результатов сохраняются между рабочими сессиями. 6.7. При физическом удалении трассы, присутствующей в одном или нескольких множествах, она удаляется из этих множеств, если в результате удаления трассы из множества, множество становится пустым, оно удаляется.