Тип доклада: Доклад

Визуализация покрытия автотестов

  • Доклад на русском языке

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

  1. API-тесты. Есть сваггер, во время его выполнения мы тоже собираем сваггер. Считаем покрытие, как дифф двух свагеров. Видно что покрыто, что нет, и какими данными.
  2. Web-тесты. Во время выполнения тестов мы собираем информацию про элементы, страницы и действия. В результате получаем такой формат:
    1. Страница;
    2. Элементы;
    3. Действия;
    4. Тесты.

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

В результате можно очень быстро отвечать на следующие вопросы:

  1. Что покрыто, а что нет.
  2. Как покрыто (только кликнули или проверили текст).
  3. Какие тесты проходят через эту страницу.
  4. Какие элементы наиболее часто используются. Вообще, такого лучше избегать, потому что это потенциальная точка отказа.
  5. Наводить на тест, увидеть видео из Selenoid.

Подключили к Selenium. Можно легко доделать для Puppeteer и для чего угодно. Будет удобно понимать, что проверяется и зачем.

Комментарий программного комитета:

Если вы помните, то Артем — тот самый человек, который постоянно пытается улучшить жизнь тестировщиков (как тех, кто автоматизирует тесты, так и тех, кто тестирует вручную). В этот раз Артем затронет необычную, но очень полезную тему: как можно визуально померить покрытие. Доклад будет полезен инженерам разного калибра.

  • #allure
  • #coverage
  • #heatmap
  • #java
  • #selenide
  • #selenoid

Спикеры

Доклады