Tm4j что это
Перейти к содержимому

Tm4j что это

  • автор:

Test Management for JIRA и его применение при разработке программного обеспечения

image

При старте проекта многие задаются вопросом «Где вести тестовую документацию?».
В этой статье мне хотелось бы рассказать вам об инструменте Test Management for JIRA (в данном случае плагин рассматривается как инструмент) для того, чтобы удобно, эффективно и качественно составлять и управлять тест дизайном проекта.

Почему нам стоит обратить внимание к этому инструменту? Потому что он:

Удобно устанавливается, поддерживается
Установка происходит через раздел управление плагинами в JIRA

Есть связь с JIRA
Да, поначалу этим не удивишь, но фишка в том, что он идет как плагин к JIRA и не нужно отдельно интегрироваться с другими инструментами тест менеджмента.

Как это улучшит мою работу?

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

Это не только улучшит вашу работу, но и ускорит ее.

Красивые, понятные отчеты в виде диаграмм
Не только тестировщики смогут составлять отчеты, но и вся команда.

Добавление и удаление своих статусов к тест кейсу, планам, ранам и результатам 🙂
Составление чек листа к задаче на разработку
Приоритизация и распределение по label в каждом тест кейсе
Поможет, например, при проведении регресса найти все необходимые тесты по label — regress

Добавление окружений
При необходимости прогона определенного тест кейса на определенном окружении

Создание общего тест кейса с описанием проверок и прикрепление его к необходимым сценариям
Применяется когда результат можно получить разными способами

Возможность интеграции с системой непрерывной интеграции
Автоматическая фиксация успешно или неуспешно пройденного теста. Используется через REST API.

Что мне делать если у меня уже написаны тест кейсы в другой системе и я не хочу переписывать?

Существует возможность импорта из файла.
Импорт из:
— Adaptavist Test Management
— Microsoft Excel
— CSV
— QAComplete
— TestLink
— TestRail
— TestTrack
— REST API
— Другое

image

Да, он платный, но никто не отменял юзать триал версию 😉

Вся документация по Adaptavist Test Management for JIRA.

TM4J

Это приложение для Linux под названием TM4J, последний выпуск которого можно загрузить как tm4j-bin-0.9.8.zip. Его можно запустить онлайн в бесплатном хостинг-провайдере OnWorks для рабочих станций.

Загрузите и запустите онлайн это приложение TM4J с OnWorks бесплатно.

Следуйте этим инструкциям, чтобы запустить это приложение:

— 1. Загрузил это приложение на свой компьютер.

— 2. Введите в нашем файловом менеджере https://www.onworks.net/myfiles.php?username=XXXXX с желаемым именем пользователя.

— 3. Загрузите это приложение в такой файловый менеджер.

— 4. Запустите онлайн-эмулятор OnWorks Linux или Windows или онлайн-эмулятор MACOS с этого веб-сайта.

— 5. В только что запущенной ОС OnWorks Linux перейдите в наш файловый менеджер https://www.onworks.net/myfiles.php?username=XXXXX с желаемым именем пользователя.

— 6. Скачайте приложение, установите его и запустите.

Home

Каждый проект уникален и у каждой команды свои запросы. Однако всех нас объединяет желание работать с качественными инструментами, которые экономят время и позволяют QA-специалистам тестировать качественнее и быстрее, в идеале чтобы TMS могла в автотесты.

Мы вновь проанализировали проверенные временем и новые системы управления тестированием, которые сейчас популярны на рынке. Выбрали функции, которые должны быть в Test Management System нашей мечты, сравнили возможности продуктов и изучили отзывы пользователей. Делимся списком инструментов, один из которых точно подойдёт вашей команде.

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

image

Что мы хотим от удобной Test Management System?

Пользователь TMS ожидает увидеть следующее:

  • Удобная установка и поддержка.
  • Удобный и понятный интерфейс.
  • Создание и управление проектами.
  • Создание пользователей и проектных ролей для пользователей.
  • Удобная интеграция с автоматическими тестами.
  • Создание тест-плана.
  • Создание тест-кейса.
  • Создание чек-листа.
  • Создание общего шага
  • Версионирование тест-кейса/чек-листа.
  • Создание пользовательских атрибутов/конфигураций.
  • Прогон тест-кейса/чек-листа.
  • Понятная система отчётности.
  • Встроенная система баг-трекинга.
  • Возможность оповещения коллег внутри и вне системы.
  • Возможность интеграции с другими инструментами.
Зачем нужна TMS?

Решить задачу создания единой TMS для работы со всей документацией проекта можно несколькими способами:

  1. Самый дешёвый способ — не заморачиваться и выбрать Google Docs для матрицы трассируемости, а дефекты вести в open-source баг-трекере.
  2. Другой способ — использовать одну из популярных TMS-ок, интегрированную с баг-трекером компании.
  3. Next-level способ — выбрать Test Management System, исходя из специфики проектов, объемов задач, типов документации и используемых видов тестирования.

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

Популярные системы управления тестированием на 2020 г
  • ALM Octane
  • Test IT
  • TestRail
  • Zephyr
  • Allure EE
  • TM4J
  • Qase
  • PractiTest
  • Testuff
  • Azure
  • MTM TFS
  • Kualitee

Рассмотрим выбранные инструменты подробнее:

1. ALM Octane

ALM Octane — долгожитель среди систем управления и жизненным циклом продукта, и его тестировании. Инструмент позволяет осуществлять планирование, создание, тестирование и контроль на всех этапах разработки. Сложен в первоначальном освоении, но незаменим для компании крупной руки, где особое внимание уделяется деталям производства. Поддержана функциональность общих шагов. Работа с автоматизированными тестами. Фактические время прохождения для каждого тестового сценария. Реализована функциональность вебхуков.
Присутствует внутренний баг-трекер. Удобная система конструирования отчетов.

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

image

  • Общий доступ к библиотекам требований и ресурсов
  • Подробные сведения о коде, тестировании, управлении рисками и их оценке, а также о соответствии требованиям
  • Быстрый доступ к показателям, например к данным о не устранённых дефектах
  • Быстрая настройка лабораторной среды для устранения ошибок конфигурации в средах Agile
  • Работа с автоматизированными тестами
  • Вебхуки
  • Удобная система отчетов
  • Создание требований и отслеживание их выполнения на всех этапах жизненного цикла приложения
  • Аналитика на любой вкус и цвет: гибко настраиваемые отчёты
  • Интеграция с 50+ инструментами

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

2. Test IT

Test IT — TMS, которую создают тестировщики для тестировщиков. Этот инструмент отличает продуманный и понятный интерфейс. Внутри системы можно создавать проекты и вести для каждого структурированную библиотеку тестовых случаев и чек-листов, часто повторяющиеся операции выделяются в общие шаги. Инструмент гибкий — в каждом проекте создаются дополнительные пользовательские атрибуты/конфигурации, распределяются проектные роли и права, что упрощает настройку TMS под процессы вашей компании. Test IT помогает руководителям групп тестирования равномерно распределять нагрузку между тестировщиками и контролировать исполнение работ с помощью пользовательских запросов и отчётов. Также в рамках самой системы есть возможность общаться с коллегами, не используя сторонние мессенджеры.

Разработчики приложения уделяют большое внимание автоматизированному тестированию, каждый тестовый случай в библиотеке тестов можно линковать с автотестами по API. Правильно настроенная интеграция с автотестами позволяет следить за прогонами и их результатами прямо из TMS в режиме реального времени. Вы сможете видеть, какие автоматические тесты в процессе выполнения, анализировать их результаты и просматривать исходный код прямо из Test IT. При необходимости можно создать тест-ран вне системы и заполнить его своими автотестами без линка с тестовыми сценариями.

Test IT активно развивается, берет фичареквесты от своих пользователей и забивает ими 40% беклога, есть грамотная техподдержка.

image

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

  • Управление тест-планами, тест-кейсами и чек-листами
  • Общие шаги для повторяющихся действий
  • Создание пользовательских атрибутов/конфигураций
  • Автоматическое распределение тестов на QA инженеров
  • Интеграция автоматических тестов с помощью API
  • Создание тест-ранов вне системы с дальнейшим управлением состояния
  • Аналитика как по автоматическим, так и по ручным тестам
  • Внутренний чат и вебхуки во внешние системы
  • Ролевая модель и персонализация
  • Геймификация
  • Двусторонняя интеграция с JIRA
  • Расширенная функциональность API
  • Импорт из других систем управления тестированием

Бесплатная пробная версия: Открытая демо-версия на сайте
Ссылка на скачивание

3. TestRail

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

image

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

Можно настроить типизации проекта для ведения в нем тестовой документации.

  • Отслеживание состояния и результатов отдельного теста
  • Сравнение результатов нескольких тестов, конфигураций и этапов
  • Типизация проектов для ведения тестовой документации
  • Внутренний чат и оповещения во внешнюю систему
  • Отслеживание рабочей нагрузки команды для корректировки задач и ресурсов
  • Развёрнутые отчёты и метрики
  • Широкие возможности настройки, облачные или локальные варианты установки
  • Интеграция с JIRA, Redmine, YouTrack, GitHub, Jenkins, Selenium и Visual Studio
  • Удобный REST API

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

4. Zephyr

Zephyr — это плагин для всем известной JIRA, который интегрирует тестирование в проектный цикл, позволяя вам отслеживать качество программного обеспечения и принимать решения в стиле go / no-go. В новых версиях была поддержана работа с автоматизированными тестами.

image

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

  • Ссылка на user-stories, задачи, требования, дефекты
  • Конфигурации деплоя: в облаке, на сервере, в дата-центре
  • Расширенная информация на дашбордах аналитики и DevOps
  • Интеграция с JIRA, Confluence, Selenium, Jenkins и Bamboo
  • Автоматизированные тесты
  • Создание пользовательских атрибутов
  • Понятная система отчетов.

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

5. Allure EE

Allure – это фреймворк для создания простых и понятных отчётов автотестов (для любого языка), представляет из себя инструмент, позволяющий внести прозрачность в процесс создания и выполнения функциональных тестов. Красивые и понятные отчёты Allure помогают команде решить многие проблемы и начать наконец разговаривать на одном языке. Allure Enterprise стал логичным продолжением подхода automation first и поддерживает обновление тестовой документации из кода автотестов. У инструмента есть множество интеграций с фреймворками тестирования и разными языками программирования.

image

Возможности

  • Легкая интеграция с automation tools
  • Компиляция кода в кейсы
  • Расширенные отчеты по автотестам
  • Проработанный UX
  • Совмещение работы с мануальными и автоматизированными кейсами
  • Многопоточность автотестов
  • Пользовательские атрибуты
  • Тайм-менеджмент (TimeLine)

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

6. TM4J

TM4J он же Adaptavist – это приложение для управления тестированием в JIRA, позволяет вести тестовую документацию в JIRA. Линкование тестовых сценариев и issue непосредственно в JIRA. Поддержана работа с автоматизированными тестами. Возможность объединения повторяющихся шагов в общий шаг.

image

  • Линкование тестовых сценариев и issue не выходя из JIRA
  • Работа с автоматизированными тестами
  • Внутренний багтрекер
  • Понятная система отчетов
  • Использование общего шага
  • Фактическое время прохождения теста
  • Экспорт данных в Excel

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

7. Qase

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

  • Тестовый репозиторий: выстраивание тестов в логические группы
  • Составление шагов для кейсов, установка приоритета и серьёзности
  • Запуск тестовых прогонов с трекингом времени по каждому тест
  • Хранение документации по проекту
  • Автоматическое заведение дефектов в интегрированные трекеры
  • Интеграция с JIRA, Redmine, YouTrack и Slack
  • Объединение результатов автотестов с REST API

Бесплатно для небольших компаний
Ссылка на скачивание

8. PractiTest

PractiTest — это комплексное средство управления тестами. Оно дает полную картину процесса тестирования и более глубокое понимание результатов тестирования. Этот инструмент поможет организовать тест-сьюты в соответствии с вашими циклами и спринтами. Тестовые наборы можно формировать по различным критериям, таким как компоненты, версии или типы. Тул заточен на Agile-тестирование, регрессионное тестирование, тестирование микросервисов и DevOps.

image

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

В техподдержке работают обученные QA-сотрудники, которые могут быстро понять вашу проблему.

  • Лёгкое добавление тестов новых фич в регрессионное тестирование
  • Группировка тестов на основе микросервисов, которые они охватывают, даже кросс-сервисные
  • Различное отображение информации для разных групп пользователей
  • Дашборды в реальном времени показывают состояние тестов, прогонов на этапах разработки и при деплое на прод
  • Интеграция с JIRA, Redmine, Jenkins, GitLab и Slack

Бесплатная пробная версия: 14 дней
Ссылка на скачивание

9. Testuff

Команда Testuff делает действительно удобный инструмент, данная TMS старается объединить в себе все методы тестирования, начиная от waterfall model и заканчивая black box testing.
Разработчики Testuff отдельно выделили свой продукт как единственную TMS, которую можно использовать на любом девайсе: смартфоны, планшеты и т.д

image

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

  • Планирование тестов
  • Интуитивный drag-n-drop интерфейс
  • Наглядные отчёты с подробными графиками
  • Два способа интеграции со сторонними инструментами баг-трекинга
  • Возможность тестировать с любого девайса

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

10. Azure DevOps Server

Это мощный инструмент работы с тестами и автотестами, за счет своей комплексности вы можете настроить своё рабочее пространство, как вам необходимо. Работайте напрямую со своими CI/CD сервисами, интегрируйте свои репозитории прямиком в Azure, ведите тестовую документацию по спринтам, которые будете раскладывать по бордам, делайте максимально детальные отчеты по вашей тестовой документации и результатам её прохождения.

image

Отдельно стоит упомянуть возможность интеграции с IDE от компании Microsoft, вы можете редактировать и настраивать свой код прямиком через Azure и интегрироваться со всевозможными системами от компании Microsoft.

  • Интеграция с любым продуктом компании Microsoft
  • Нативный интерфейс
  • Интеграция с любым CI/CD
  • Ведение удобных Dashboards
  • Работа с автотестами
  • Пользовательские атрибуты

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

11. MTM TFS

Team Foundation Server (TFS) — комплексное решение от Microsoft, которое включает в себя систему управления версиями, сбор данных, построение отчетов, отслеживание статусов и изменений по проекту.

Microsoft Test Manager — часть этого продукта и требует установки Visual Studio. Такое сочетание дает возможность связать задачи, которые поставлены перед тестировщиком, с заведенными дефектами и отчетами о затраченном на работу времени.

image

Планы и результаты тестирования сохраняются на сервере Team Foundation Server.
МТМ включает в себя тест-план, тест-кейс и конфигурации.

Сам TFS является проприетарным ПО, лицензия — коммерческая. Работает на трех уровнях: клиентский уровень, прикладной уровень и уровень данных, в зависимости от чего возможна работа или через web, или через десктоп-приложение. МТМ работает только на прикладном уровне, поэтому требуется установка на сервер (если сервер удаленный, работа проводится через VPN).

  • Исследовательское тестирование
  • Планирование и выполнение ручных тестов
  • Кроссплатформенные конфигурации тестов (разные версии одного теста для разных платформ/релизов)
  • Диагностика прохождения теста (логи, видео и т. п.)
  • Импорт-экспорт тестов
  • Межпроектный импорт-экспорт тестов
  • Запись и воспроизведение ручных тестов (рекордер)
  • Автоматизация тестов

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

12. Kualitee

Kualitee — продукт Kualitatem, компании по тестированию программного обеспечения и информационной безопасности, специализирующейся на обеспечении безошибочной работы приложений повсюду.

image

Kualitee предлагает функции управления проектами, управления тестированием, управления дефектами с интеграцией с баг-трекерами. Гибкая система пользовательских атрибутов позволяет очень точно настроить необходимое рабочее пространство. Дополнительно есть возможность глубокой настройки профилей пользователя и его прав доступа.

  • Управление проектами
  • Управление дефектами
  • Управление тестовой документацией
  • Персональная панель инструментов
  • Продуманная настройка пользователей

Бесплатная пробная версия: 30 дней
Ссылка на скачивание

Понравился пост? Не забудьте поделиться им!
И помните, только тестировщик стоит между багами и клиентом! 🙂

Tm4j что это

Автоматизация тестирования

latest update of the page: 24-04-2023, 13:46 UTC

Присмотреться к чужому опыту

Базовое

  • Написание автоматических тестов для тестирования пользовательского интерфейса десктопных приложений
  • Selenium для всех: как мы учим QA-инженеров работать с автотестами. Примечательно то, что они задумались и даже реализовали какое-никакое автоматическое вычисление какие тесты запускать под выбранную задачу, на основе того какие файлы изменил разраб в репозитории. Т.е. своеобразный impact-analysis в тестировании.
  • Как сократить издержки на автотестах
  • Пожалуй, лучшая архитектура для UI тестов (НТЦ ПРОТЕЙ, 2020). Java.
  • Антипаттерны тестирования ПО (unit-тесты, интеграционные тесты) (2018)

Комплексный подход

  • Что делать, если у вас слишком много автотестов? (Сергей Потанин, Wrike, 2020)
  • Автоматизация End-2-End тестирования комплексной информационной системы. Часть 1. Организационная
  • Автоматизация End-2-End тестирования комплексной информационной системы. Часть 2. Техническая

Интересное

Тестирование в условиях микросервисной архитектуры и Service mesh

  • Реализация Consumer-Driven Contract подхода для тестирования микросервисов (Фрол Крючков, Авито, 2018)
  • Consumer-Driven Contracts глазами разработчика (2019)

Cucumber

  • Руководство: Cucumber + Java (2017)
  • Cucumber 3 + Java (2018)
  • Cucumber Selenium Java Example

Coded UI

  • Time for Coded UI Tests
  • Тестируем UI с помощью Coded UI Test
  • Walkthrough: Creating, Editing and Maintaining a Coded UI Test
  • тестирование на уровне кода — модульное ( unit testing). Это тестирование одного модуля кода (обычно это одна функция или один класс в случае ООП-кода) в изолированном окружении. Это значит, что если код использует какие-то сторонние классы, то вместо них подсовываются классы-заглушки (моки и стабы). Код не должен работать с сетью (и внешними серверами), файлами, базой данных, иначе мы тестируем не саму функцию или класс, а еще и диск, базу, и т.д.
  • тестирование через API. API — это набор функций, которые можно вызывать, чтобы получить какие-то данные.
    Например, у Яндекс.Карт есть API геокодера. Отправив к нему запрос с географическим адресом, ты можешь получить координаты точки (и наоборот), а у Центробанка есть API, которое возвращает официальный курс валют в заданный день.
    Если у твоего приложения есть API, то можно тестировать его, посылая заранее подготовленные запросы и сравнивая пришедший ответ с ожидаемым.
  • тестирование через пользовательский интерфейс — GUI-тестирование. Имитация действий пользователя в браузере с помощью специальных тестовых фреймворков (типа Selenium).
  • серия программных продуктов Selenium
  • PhantomJS
  • JUnit
  • PhpUnit

Компания созрела для автотестов?

Если хочется , то для этого нужно и скиллы ролей
проектирования и разработки автотестов 1. Сначала нужно провести тест-анализ продукта/сервисов — выявить требования, определить процент покрытия их существующими тестами, определить технологический стек, используемый тестируемыми сервисами и их БД. тест-аналитика, лида
2. Определиться с уровнем тестирования: фронт, бэк, UI, API (web REST, web не REST, RPC. ), десктоп/мобильное приложение и т.п. тест-аналитика
3. Определиться каким образом будем тестировать: функциональное, интеграционное, нагрузочное. тест-аналитика
4. Исходя из п.1-3 подобрать ЯП и фреймворк (готовый или создавать самим) для автотестов.
Используем ли Selenium для UI, используем ли Cucumber с его Gherkin. И т.п.
опытного разработчика автотестов, тест-аналитика
5. Для подачи на вход автоматизаторам, требуется, чтобы кто-то составлял тест-кейсы по требованиям. Возможно, это будет тест-аналитик или сами тестировщики.
Требуется удобный инструмент для хранения тест-кейсов (какой-нибудь древний HP ALM, современная Jira-плагин TM4J, что-то ещё.
тест-аналитика, тестировщика
6. Непосредственно разработка автотестов.
Требуется обеспечить разработчиков удобной IDE (платной/бесплатной), исходя из выбранных языков/фреймворков в п.4.
разработчика автотестов
7. Исходя из п.1-3 можно уже сколько и каких сервисов требуется развернуть для тестирования.
Таким образом выходим на технические требования к тестовому стенду (CPU/RAM, OS, будет ли это Openshift и прочее и прочее) и БД на них. Нужны ли в наличии актуальные мобильные устройства для прогона на них автотестов.
Далее происходит обсуждение с ЛПР есть ли бюджет на покрытие этих технических требований, надо ли где-то ужиматься за счёт уменьшения тестового покрытия. Обычный процесс «торговли» за бюджет и поиски компромисса.
встраивания автотестов в CI/CD 8. Выбрать инструмент для CI/CD. Возможно, решено использовать Jenkins как один из самых распространённых, по установке/настройке/решению проблем с которым легко найти ресурсы в Сети.
Определить как будут запускаться job’ы с автотестами, на каких машинах, с какими параметрами, в каком виде мы хотим получать отчёт о тесте (Allure, кастомные виды представлений. ).
Определить на какой машине с какими ресурсами будет размещён выбранный инструмент, какая там будет ролевая модель (кто будет иметь права на запуск/редактирование job’ов).
Если делать это всё без инструмента, т.е. запуск будет производиться вручную или средствами cron в linux или job’ов Windows — то всё равно это требует обсуждения.
любого кто пользовался выбранным инструментом CI/CD
— разработчика автотестов, администратора, тестировщика.
* методик нагрузочного тестирования,
* разработки и актуализации средств нагрузочного тестирования
(сценарии и скрипты НТ
, эмуляторы, скрипты генерации данных
, скрипты анализа результатов),
9. После п.1 провести тест-анализ сервисов в разрезе именно нагрузочного тестирования, в т.ч. получение профия нагрузки с ПРОДа, опрос администраторов, поддерживающих ПРОД и т.п.
Отталкиваясь от требований, определить что следует нагружать и каким образом, какими способами будем измерять, какие метрики будем использовать.
тест-аналитика, тестировщика-нагрузочника
10. Определить какие технические ресурсы нам потребуются для реализации задуманного по НТ.
Провести обсуждение с ЛПР есть ли бюджет на такие ресурсы, надо ли где-то ужиматься за счёт уменьшения тестового покрытия. Обычный процесс «торговли» за бюджет и поиски компромисса.
тестировщика-нагрузочника, архитектора, тест-аналитика, лида
11. На основании тест-анализа в разрезе НТ из п.9 спроектировать сценарии НТ, определить необходимость скриптов анализа данных, учесть их в сценариях. тестировщика-нагрузочника, тест-аналитика
12. На основании сценариев НТ из п.9 определяем необходимость подготовки данных в БД. Какие они должны быть. Нужно ли их подготавливать отдельными скриптами или же можем себе позволить репликацию с БД прода полностью или частично. тестировщика-нагрузочника, тестировщика данных, тест-аналитика
13. На основании тест-анализа из п.1 и п.9 определяем нужны ли нам заглушки, моки, синтетические тестовые приложения (имитирующие поведение задействованных в сценарии сервисов) тестировщика-нагрузочника, разработчика автотестов, тест-аналитика
14. Непосредственно разработка скриптов НТ. тестировщика-нагрузочника, разработчика автотестов
15. На основании данных из п.10 и п.12 провести обсуждение с ЛПР есть ли бюджет на такие ресурсы, надо ли где-то ужиматься за счёт уменьшения тестового покрытия. Обычный процесс «торговли» за бюджет и поиски компромисса. тестировщика-нагрузочника, архитектора, тест-аналитика, лида.
поддержки разработанных автотестов разработчика автотестов и немного тест-аналитика.

Что автоматизировать

Какие тест-кейсы стоит автоматизировать в первую очередь

  • покрывающие самые критические для Бизнеса бизнес-процессы и юзкейсы
  • часто требующиеся к (пере)прохождению
  • которые слишком сложно и неудобно выполнять вручную
    , например, содержащие проверку данных, требующих точных математических и логических расчётов (банковское, бухгалтерское, аналитическое ПО)
    или проверку структуры многочисленных файлов/сообщений, созданных системой.
  • требующие много времени на ручное прохождение
    , например по проверке корректности отображаемых результатов поиска данных в ответ на запрос по данным
    или проверяющие длинные бизнес-процессы, требующие действий под различными пользовательскими ролями на многочисленных формах UI и в различных системах.

Какие тест-кейсы НЕ СТОИТ автоматизировать

  • разработанные недавно и еще не проверенные вручную
  • требования для которых постоянно меняются
  • разработанные для специфической задачи

Общие рекомендации

  1. Разметка автотестов по @Tag, @Category, @Feature, @Types, @Step и прочему. Не экономьте на этом.
    Такая группировка автотестов позволяет производить запуск не всех 100500 тестов при каждом чихе, а именно тех, которые связаны с изменённой/добавленной функциональностью.
    Также это позволяет производить трассировку между тестами и функциональностью.
  2. Кошерный автотест в случае PASS (успешного прохождения) «убирает за собой», возвращая данные и настройки тестового стенда в состояние, максимально близкое к исходному. Если, конечно, настройки тестируемых приложений менялись в ходе теста, если в ходе теста создавались/изменялись объекты данных.
    Если автотест упал, то чистить за собой ему не надо, потому что его данные потребуются для расследования причины падения.
    Также, хорошей идеей может быть создание cleanup-скрипта, который по расписанию, например, ранним утром каждый день, чистит данные, которые были созданы за предыдущий период время упавшими тестами; предполагается, что за 1-2 дня все упавшие автотесты были расследованы и их данные нам больше не нужны).
  3. Здесь про must have
  4. TBD
  1. Файлы проекта укладываются в контейнер с указанием запускающего файла start.sh и публикуются в хранилище YYY.
  2. При запуске тестов из Jenkins, контейнер устанавливается в Openshift/k8s и происходит автоматический запуска скрипта start.sh
  3. все файлы из контейнера копируются в папку /tmp/tests
  4. запускается сборка проекта Maven’ом с запуском тестов
  5. по завершению сборки и тестов формируется allure-отчёт

Java + Maven + Cucumber + Selenium

Создадим примитивные helloworld GUI-тест и API-тест с использованием Java, Maven, Cucumber (+JUnit) и Selenium.
Нижеизложенное выполнялось под Windows 10 и Intellij IDEA Ultimate 2020.1.

Установка

  1. Установить JRE (Java Run-Time Environment) = https://www.java.com/ru/download/
    Посредством консоли убедиться что Java установлена, например: > java -version java version «1.8.0_261» Java(TM) SE Runtime Environment (build 1.8.0_261-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
  2. Установить JDK: SE или EE.
    Ссылки для Java Standard Edition:
    1. Java SE download = https://www.oracle.com/java/technologies/javase-downloads.html
    2. JDK installation guide = https://docs.oracle.com/en/java/javase/14/install/overview-jdk-installation.html
    1. JAVA_HOME = [путь установленного JDK, например C:\Program Files\Java\jdk-14.0.2 ]
    2. в переменную Path добавить путь %JAVA_HOME%\bin
    1. download = https://maven.apache.org/download.cgi
    2. installation guide = https://maven.apache.org/install.html
    3. installation guide = https://mkyong.com/maven/how-to-install-maven-in-windows/
    1. MAVEN_HOME = [путь установленного Maven, например C:\Program Files\apache-maven-3.6.3 ].
    2. в переменную Path добавить путь %MAVEN_HOME%\bin

    Настройка IDEA, создание Проекта, настройка dependencies

    1. Настроить Intellij IDEA на работу с Maven.
      1. Меню File/Config -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven. Maven home directory = путь до каталога с Мавен
      2. .. Maven->Importing. JDK for importer = Use JAVA_HOME
      3. .. Maven->Runner. JRE = Use JAVA_HOME
      4. OK
      1. +Create New Proejct
      2. Maven
      3. Archetype = org.apache.maven.archetypes:maven-archetype-quickstart
      4. Project SDK = [путь до JDK]
      5. Next
      6. Заполняем Name, выбираем Location
      7. Заполняем GroupId и ArtifactId, например = org.tests и helloworld
      8. Finish

      mvn clean compile

      Hello world

      1. Структура проекта, создание cucumber-файлов для фич и кода
        TBD
      2. Hello World test
        TBD

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *