Могу ли я получить статистику по шагам тест-кейсов внутри робота?

Чтобы оптимизировать время выполнения, я создаю несколько тестовых случаев, зависящих друг от друга, я хочу получать метрики и статистику не только для каждого тестового набора и набора тестов. Но также я хочу генерировать статистику и показатели для каждого шага. Это возможно ? PS: я использую Team City для непрерывной интеграции.

С наилучшими пожеланиями,

Эмна А.


person Emna Ayadi    schedule 05.09.2017    source источник
comment
Вы хотите сделать это во время выполнения теста или можно постобработать результаты, чтобы получить статистику?   -  person Bryan Oakley    schedule 05.09.2017
comment
Мне просто нужны показатели и отчеты для каждого из них после завершения теста.   -  person Emna Ayadi    schedule 06.09.2017


Ответы (2)


Используя API фреймворка робота, мы можем получить TEST и KEYWORD Metrics.

Ссылка:

Ссылка

API:

  • класс robot.result.model.Keyword
  • класс robot.result.model.Test

Код показателей ключевых слов:

# Keyword Metrics Code: (save following snippet as python file and execute)
from robot.api import ExecutionResult,ResultVisitor

result = ExecutionResult('output.xml')
result.configure(stat_config={'suite_stat_level': 2,
                              'tag_stat_combine': 'tagANDanother'})

class KeywordMetrics(ResultVisitor):

    def visit_keyword(self,kw):
        print "Keyword Name: " + str(kw.name) 
        print "Keyword Status: " + str(kw.status)
        print "Keyword Starttime: " + str(kw.starttime)
        print "Keyword Endtime: " + " " + str(kw.endtime)
        print "Keyword Elapsedtime (Sec): " + " " + str(kw.elapsedtime/float(1000))

result.visit(KeywordMetrics())

# Note:
# visit_keyword() returns userdefined keywords
# start_keyword() returns all the keywords (library and user defined)

Код тестовых показателей:

# Test Metrics Code: (save following snippet as python file and execute)
from robot.api import ExecutionResult,ResultVisitor

result = ExecutionResult('output.xml')
result.configure(stat_config={'suite_stat_level': 2,
                              'tag_stat_combine': 'tagANDanother'})

class TestMetrics(ResultVisitor):

    def visit_test(self,test):
        print "Test Name: " + str(test.name) 
        print "Test Status: " + str(test.status)
        print "Test Starttime: " + str(test.starttime)
        print "Test Endtime: " + " " + str(test.endtime)
        print "Test Elapsedtime (Sec): " + " " + str(test.elapsedtime/float(1000))

result.visit(TestMetrics())

Проект Robot framework Metrics реализован для отображения результатов метрик в формате HTML с панелью мониторинга.

Основные моменты

  • Гистограмма производительности 10 лучших тестов
  • Гистограмма эффективности 10 ключевых слов
  • Круговые диаграммы
  • Ключевые слова и тестовые метрики в табличном формате

Отчет о показателях платформы роботов ReadMe.MD

person Community    schedule 19.08.2018

Есть довольно много инструментов, которые вы можете использовать для достижения этой цели. Создать свой собственный также относительно легко, будь то через интерфейс прослушивателя Robot Framework или путем пост-интерпретации тестовых выходных данных.

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

person Verv    schedule 05.09.2017