Библиотека отчетов OpenTest

#opentest

#opentest

Вопрос:

В настоящее время я ищу информацию о доступных возможностях создания отчетов для OpenTest. Мне нужна информация, касающаяся следующего:

Переносимость отчетов / ведения журнала — могут ли эти результаты публиковаться в различных форматах

Детализация отчетов / ведения журнала — есть ли способ получить очень подробную информацию о том, о чем сообщается, и / или стратегии, чтобы гарантировать, что регистрируется достаточно информации, позволяющей отлаживать автоматизированные тесты и тестируемую систему (SUT)

Скриншоты — существует ли текущая функциональность, позволяющая снимать скриншоты и публиковать их во внешних системах?

Ответ №1:

Переносимость отчетов / ведение журнала

Результаты тестового сеанса можно получить с помощью API либо в формате JSON (который содержит много деталей), либо в формате JUnit XML:

 http://localhost:3000/api/session/<SESSION_ID>?format=json
http://localhost:3000/api/session/<SESSION_ID>?format=junit
  

Подробный журнал тестового сеанса может быть получен в формате: JSON или удобочитаемом формате:

 http://localhost:3000/api/session/<SESSION_ID>/log?format=json
http://localhost:3000/api/session/<SESSION_ID>/log?format=pretty
  

Детализация отчетов / ведение журнала

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

Когда вы хотите устранить неполадки в неудачном тестировании, в большинстве случаев вам понадобится подробная информация журнала, которую можно получить с помощью API, о которых я упоминал выше. Помимо информации журнала, сгенерированной самим OpenTest, вы всегда можете записать дополнительную информацию, специфичную для вашего приложения или тестового сценария, используя $log JavaScript API.

Скриншоты

Скриншоты автоматически снимаются для веб-тестов и тестов пользовательского интерфейса всякий раз, когда тестовое действие завершается неудачей. Если вам нужно сделать дополнительные снимки экрана во время теста, вы можете сделать это, используя TakeScreenshot ключевое слово для веб-тестирования или мобильного тестирования. Вы также можете сделать снимок экрана после любого тестового действия, используя аргумент глобального тестового действия $screenshot:

 - description: Click product 1 and capture a screenshot
  action: org.getopentest.selenium.Click
  args:
    locator: { id: product1 }
    $screenshot: true
  

Вы можете загружать скриншоты с помощью этого API:

 https://localhost:3000/api/screenshot/SID1554380072_WEB_T05_SG01_ST01_after_03.png
  

SID1554380072_WEB_T05_SG01_ST01_after_03.png это имя файла скриншота, который вы можете найти в результатах выполнения теста в формате JSON.

Интеграция с пользовательскими решениями для создания отчетов

В какой-то момент вам потребуется интеграция с выделенным продуктом для создания отчетов, который может предоставить вам все приятные функции, которые OpenTest не сможет предоставить из коробки. Это можно сделать с помощью API, которые я описал. Чтобы уведомлять заинтересованные стороны о текущем статусе тестовых сессий, OpenTest также предоставляет WebSocket API. Вы можете использовать это, чтобы получать уведомления о завершении тестового сеанса, а затем извлекать всю необходимую информацию через API. Вы можете найти Java-проект, который делает все это здесь:https://github.com/adrianth/opentest-monitor. Этот проект задуман как отправная точка для вашей собственной пользовательской интеграции.