Привет, Хабр! Я Александр Зырянов, проектный менеджер ТМС с открытым исходным кодом TestY. Сразу о главном: выложили в open source версию TestY 2.1. 

Во-первых, подвезли любимую фичу всех разработчиков — темную тему. Дочитайте до конца, чтобы посмотреть, как выглядит интерфейс различных страниц. Во-вторых, совместно с командой технических писателей YADRO разработали удобную документацию, чтобы погрузиться в работу системы с головой.

Какие еще изменения ждут пользователей в TestY 2.1 — читайте под катом.

Перешли на темную сторону

По многочисленным просьбам в TestY добавили темную тему. Выбор темы доступен на экране логина, а также на странице Dashboard. И там и там переключатель находится рядом с выбором языка интерфейса. Можно выбрать один из трех режимов:

  • светлый,

  • темный,

  • системный. 

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

Темная тема
Темная тема
Искандер Файзрахманов

Директор департамента контроля качества в YADRO

Нам нравится, что любые предложения по улучшению системы рассматриваются и обсуждаются. В нашем Confluence-пространстве есть отдельная страница, куда все ребята из департамента тестирования добавляют замечания и предложения по улучшению работы ТМС. На совместных звонках с командой TestY все пункты обсуждаются, и по итогам создаются задачи на доработку.

Когда TestY только запустилась, мы сомневались в системе, потому что функционал был сырой и работал не очень хорошо. Но чем больше мы пользовались ТМС, тем больше проблем исправлялось, мы ждали обновлений. Если возникают сбои или баги, мы сразу сообщаем о них ребятам напрямую в Telegram, и команда TestY быстро их исправляет. Такой подход радует: TestY — новый продукт, и понятно, что он пока уступает более зрелым конкурентам. Но благодаря такому вниманию к вопросам мы скоро сможем догнать их.

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

Разработали и зарелизили документацию

В завершении прошлой статьи я упоминал, что мы совместно с командой технических писателей активно работаем над пользовательской документацией.

Для ведения документации мы выбрали подход Docs as a code. Документация хранится вместе с кодом приложения. Для написания и сборки используем более-менее классическое сочетание: rST-формат в связке со Sphinx. Нам показалось, что такой вариант предоставим большую гибкость, чем стандартный MD — проверим это. К тому же,  rST в связке со Sphinx — стандарт документации для open source-проектов.

Одна из страниц документации
Одна из страниц документации

Мы поддерживаем документацию в актуальном состоянии, поэтому рассчитываем, что в дальнейшем любое изменение текущей функциональности, как и разработка новой, будет сопровождаться обновлением документации. Это будет одним из Definition of Done для реализации фич.  

Виктория Яшина

Руководитель направления в отделе технической документации в YADRO

Работа над документацией ТМС TestY велась поэтапно с тщательной подготовкой. На начальном этапе мы выстроили взаимодействие с командой разработки и заложили основу для будущей документации:

  1. Определили целевую аудиторию и комплект документов.  

  2. Выбрали формат и инструменты разработки.  

  3. Разработали черновую структуру документа.

Далее — основной этап разработки, который включал в себя:

  1. Переработку имеющихся черновиков.

  2. Сбор недостающей информации.

  3. Детальное изучение интерфейса системы.

  4. Доработку структуры документации с учетом новых данных. 

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

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

Чтобы команда могла в перспективе поддерживать документацию, выбрали подход «документация как код» (Docs as Code). Это решение позволяет:

  • лучше поддерживать актуальность документации, так как она хранится вместе с кодом,

  • версионировать документ или откатывать изменения самостоятельно, если это необходимо,

  • разрабатывать документацию с другими разработчикам одновременно,

  • быстрее вносить изменения и обновлять документацию.

Изучить документацию →

Чтобы получить документацию в HTML-формате, поставьте версию TestY 2.1.0.

Избавились от модального окна в форме создания и редактирования тест-кейсов

Мы доработали создание и редактирование тест-кейсов, в том числе улучшили работу с пошаговыми тест-кейсами.

В версии 2.1 мы переработали создание, отображение и редактирование шагов и наконец избавились от модального окна. Таким образом, все операции с шагами теперь доступны в формате inline-редактирования.  

Новый вид формы
Новый вид формы

Изменили форму добавления результатов

В предыдущих версиях форма добавления результатов представляла собой модальное окно с выбором статуса для теста/шагов теста, формой для добавления комментария, а также полями, которые относятся к кастомным атрибутам.

Что такое кастомные атрибуты и как мы с ними работаем, читайте в статье о прошлой версии TestY.  

Остальная информация о тесте, к которому добавляется результат, отсутствовала  в форме.

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

Новая редакция формы добавления результатов
Новая редакция формы добавления результатов

Изменение рабочей области позволило нам лучше расположить элементы формы и правильнее использовать возможности скролла (в модальном окне он выглядел странновато).

В дополнение к переработке формы мы предусмотрели возможность добавлять результат без просмотра теста. Если раньше кнопка Add Result располагалась внутри шторки с информацией о тесте, то теперь результат можно добавить по кнопке прямо из табличного или древовидного представления тестов.

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

Добавили массовые операции

В разделе Test-Suites & Cases появились две массовые операции: изменение лейблов и перенос тест-кейсов.

При изменении лейблов ориентировались на привычный для пользователя флоу, поэтому реализовали четыре варианта:

  • добавить к существующим,

  • заменить на выбранные,

  • удалить найденные,

  • удалить все.

Новые лейблы
Новые лейблы

Добавили массовые операции с тестами в разделе Test Plans & Results:

  • удаление тестов из плана,

  • добавление результатов к тестам.

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

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

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

1. Пользователь выбирает статус.

2. Мы показываем обязательные и необязательные поля, которые нужно заполнить для этого статуса. При этом поля созданы как общие для всех тестовых-наборов в проекте.

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

Добавили статистику по дочерним планам

Одно из самых ожидаемых и часто запрашиваемых улучшений, что мы по разным причинам не успели реализовать в версии 2.0, — это отображение статистики по дочерним планам. Другими словами, это возможность посмотреть прогресс по дочерним элементам без необходимости заходить в каждый из них.

Мы рассмотрели здесь несколько вариантов реализации. Где-то сталкивались с большими проблемами по перформансу, где-то не были уверены в удобстве предлагаемого решения. В итоге рассмотрели все варианты на архитектурном комитете и выбрали тот, что, на наш взгляд, закрывает основные потребности и работает достаточно удобно.

В версии 2.1 статистика по дочерним планам доступна в двух вариантах:

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

  • Отдельная вкладка в разделе статистики. Во вкладке отображается прогресс по первому уровню дочерних планов.

Обновили страницу overview

В версии 2.0 мы начали переработку страницы overview, перенесли на нее статистику по проекту. В версии 2.1 продолжаем заниматься этой вкладкой.

Что уже сделали по этой странице:

  • Перенесли информацию о проекте (описание, публичность, настройки).

  • Перенесли администрирование проекта.

  • Добавили график с прогрессом выполнения тестов в проекте.

  • Добавили блок Assigned to me, в котором отображаем сводную статистику по назначенным на пользователя тестам в проекте, а также показываем прогресс по отдельным планам. Клик по плану переводит пользователя на страницу Test Plans & Results с открытым планом и примененным фильтром по полю Assigned to.

  • Сохранили блок статистики по планам в проекте с просмотром прогресса в заданном интервале времени.

Все вопросы по работе системы задавайте в комментариях или присылайте на testy@yadro.com

Комментарии (0)