Всем привет!
В этой статье я бы хотел рассказать о проекте, над которым сейчас работаю.
QaraTMS - это open source система для управления тестированием, менеджмента тест кейсов и тестовой документации.
Немного предыстории:
Изначально тест кейсы хранились в TestRail, но проект не очень большой, поэтому через время большая часть функционала была покрыта авто тестами.
В тестовой документации остались в основном чек листы, немного тест кейсов, плюс документация по функционалу админки, тестовым скриптам, и прочим модулям и инструментам. TestRail стал использоваться просто как хранилище документации. Платить за это было как-то нецелесообразно, поэтому от TestRail решили отказаться.
Возникла необходимость где-то хранить тестовую документацию.
Платные сервисы сразу отпадают, хранить тест кейсы в google sheets или excel всегда казалось неудобным, особенно если кейсов много.
Бесплатные системы устарели и выглядят так, что лучше уж google sheets.
Поэтому появилась идея написать свою open source TMS, собрать все лучшее из платных систем и избавиться от их минусов.

По моему мнению основные минусы систем управления тестированием это:
- Цены 
- Перегруженность интерфейса и функционала - например в одной из таких систем в форме создания тест кейса целых 20 полей. Или всплывающая форма в тест ране, в которой нужно указать результат прохождения теста, каждый раз, даже если тест прошел. А если тестов сотни? Сколько времени будет уходить на то, чтобы каждый раз закрывать эту форму? 
- Нет модуля для хранения документации. Для тестов тоже бывает нужна документация, например описание тестовых скриптов, настроек в админке. А редактор который есть в форме тест кейсов не подходит для создания и редактирования полноценных документов. 
- И просто мое желание иметь возможность хранить информацию локально и не зависеть от сторонних сервисов. Вдруг он закроется через год, изменит условия использования или решит, что больше не собирается работать в какой-то стране. 
QaraTMS
Репозиторий на GitHub. Проект написан на Laravel, предназначен для небольших команд и сейчас это бета версия.
Основные идеи это:
- Интуитивно понятный интерфейс. 
- Удобное хранилище тест кейсов, тест сьютов, чеклистов, удобный редактор. 
- Обязательно отдельный модуль документации. Одно место для хранения тестовой документации и документации по проекту. 
- Автоматизация - сейчас можно выбрать только тип тест кейса - ручной или автоматизированный. В репозитории указывается сколько кейсов были автоматизированы. Планируются удобные графики для понимания какой % функционала покрыт авто тестами и API для запуска авто тестов. 
- Минимализм и ничего лишнего. 
Как работать с QaraTMS
Сначала создается проект. На странице дашборда немного статистики по проекту.

Затем создается репозиторий / хранилище для тестовой документации – тест сьютов и тест кейсов.
Их может быть несколько, например для разных модулей проекта – основного web приложения, админ панели, API, мобильного приложения и т.д.

В тестовом репозитории создаются тест сьюты и тест кейсы. Нормального редактора пока нет, но есть поддержка markdown разметки.

Когда есть тест кейсы можно создать тест план. Например Full Regression, тест план для самого важного функционала, и т.п.
В теста плане выбирается репозиторий и тест кейсы которые будут проверяться.

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

Также есть модуль документации.

Текущие проблемы:
- Точно есть баги. 
- Нет опыта во фронтенд разработке и понимания как сделать правильно и с современным подходом. Нужен фронтенд разработчик чтобы переделать страницу репозитория, добавить удобное дерево тест сьютов, drag and drop сортировку. 
- Нет сортировки тест кейсов. 
- Пока нельзя загружать файлы в редакторе тест кейсов. 
Планы
- Получить фидбек, идеи, особенно от тех кто занимается ручным тестированием - насколько все удобно, чего не хватает. 
- Добавить регистрацию, роли, права пользователей. 
- Рефакторинг дерева тест сьютов, drag and drop сортировка 
- Доработка редактора тест кейсов. 
- API для автотестов. Возможность запускать тест ран через API и указывать статус для автотестов (passed / failed) 
- Интеграция с Jira 
Комментарии (8)
 - worldmind06.06.2022 11:53- А чем существующие не угодили? Их вроде полно, я не сильно в теме но слышал про достаточно крупные проекты юзающие опенсорсные инструменты для таких целей.  - vit125207.06.2022 13:42- Большая часть устарела или ориентирована на сотни тестов, а современные системы имеют покрытие под миллион кейсов, так что многие системы просто проседают по производительности, а так же имеют явно плачевный статус поддержки. Одним словом на рынке TMS систем проблема имеет место, но данный продукт пока непонятное место занимает. Нужно больше информации и выступлений, но я с трудом понимаю какие сегодня есть места для публикаций (выступлений) и опять же вопрос аудитории. С уходом всяких EPAM-ов и прочих компаний сомнительным остаеться поддержка их Report Portal-ов. 
 
 - Gumbatik33307.06.2022 13:41- Эту систему можно установить на Линукс? У меня возникли сложности и не понимания по установке.  - predewill Автор07.06.2022 13:42- конечно можно. - только в системе должен быть установлен php, mysql, composer 
 
 
           
 
jreznot
Их всех постигнет суровая кара, да?
predewill Автор
только тех кто пишет код с багами)