2010-09-03 3 views
1

В нашей среде разработки мы запускаем службу непрерывной интеграции (TeamCity), которая отвечает на проверку кода, запуская задания сборки/тестирования и сообщая результаты. Пока работа ведется, мы можем легко увидеть, сколько тестов было выполнено до сих пор, сколько неудач и т. Д.Как сделать результаты теста отчета RFT в режиме реального времени?

Моя команда по автоматическому тестированию предоставляет тесты пользовательского интерфейса, разработанные в Rational Functional Tester. Извлечение этих тестов из исходной системы управления, компиляция и выполнение их из командной строки - все это довольно простые упражнения.

То, что я не смог найти, - это способ автоматического сообщения результатов теста - например, для прослушивателей, например, не существует каких-либо крючков, или каким-либо образом настроить сообщения, которые испускаются.

Из моих исследований до сих пор я пришел к выводу, что мой единственный вариант - (а) дождаться окончания тестов, затем (б) разобрать HTML-отчет, который генерирует RFT.

У кого-нибудь есть лучший ответ?

ответ

1

Вот обходной путь я использовал для подобной цели:

  1. Написать вспомогательный супер класс, который перепишет метод обратного вызова OnTerminate, реализовать свои лог синтаксического анализа логики там.
  2. Смените вспомогательный суперкласс ваших тестовых скриптов на вспомогательный суперкласс, созданный на шаге 1.
  3. Используйте RFT CLI, используя свои сценарии в своем коде постоянной интеграции.
0

Расширение на @ eric2323223, в вашем OnTerminate переопределения, вы можете использовать build script interaction функциональность Teamcity, чтобы иметь свой RFT годен/негоден закатанными 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']