Как сделать результаты теста RFT Report в режиме реального времени?
Вопрос
В нашей среде разработки мы запускаем непрерывную интеграционную службу (TeamCity), которая отвечает на кодирующие флаги, выполняющие задания по сборке / тестам и сообщаем о результатах. Хотя работа осуществляется, мы можем легко увидеть, сколько модульных тестов выполнено до сих пор, сколько не удалось и т. Д.
Моя автоматизированная тестовая команда доставляет тесты пользовательских интерфейсов, разработанных в рациональном функциональном тестере. Извлечение этих тестов из системы контроля источника, составив их и выполняя их из командной строки, кажется, довольно прямые упражнения.
То, что я не смог найти, - это способ автоматически сообщить о результатах теста - например, казалось, не кажется любыми крючками для слушателей, например, или любой способ настроить излучаемые сообщения.
На данный момент с моих исследований я пришел к выводу, что мой единственный вариант - это (а) дождаться до конца тесты, то (b) разбирать отчет о HTML, который генерирует RFT.
У кого-нибудь есть лучший ответ, чем это?
Решение
Вот обходной путь, который я использовал для подобной цели:
- Напишите помощника Super Class, который перезаписывает метод обратного вызова онкера, реализуйте свои логики анализа журналов.
- Измените вспомогательный супер класс ваших тестовых сценариев в помощник Super Class Create в Step1.
- Использовать RFT CLI. Вызовите свои сценарии в свой непрерывный код интеграции.
Другие советы
Расширение @ eric2323223, в вашем овертинированном переопределении вы можете использовать TeamCity's Создать сценарий взаимодействия Функциональность, чтобы получить статус RFT Pass / Fail, свернувшись до TeamCity. Вам просто понадобится эти специальные сообщения Teamcity, испускаемые в командную строку, чтобы Teamcity выбирает их.
##teamcity[testStarted name='test1']
##teamcity[testFailed name='test1' message='failure message' details='message and stack trace']
##teamcity[testFinished name='test1']
##teamcity[testStarted name='test2']
##teamcity[testFailed type='comparisonFailure' name='test2' message='failure message' details='message and stack trace' expected='expected value' actual='actual value']
##teamcity[testFinished name='test2']