Платформа робота, как я могу получить результат после запуска метода в статическом API

Ниже приведен мой файл resource.txt, на который я ссылаюсь в файлах тестового примера и пакета (__init__.txt). Я хотел бы получить результат после выполнения ключевых слов, которые сопоставлены со статическим API (RobotLibrary), а затем передать результат обратно в тот же модуль статического API (RobotLibrary) для утверждения результата. Я пытался сохранить результат как состояние в RobotLibrary, но это не сработало, вероятно, потому, что RobotLibrary — это один экземпляр для нескольких тестов? Я не возражаю возвращать результат через ключевые слова и возвращать их обратно в качестве аргументов для последующих вызовов.

*** Settings ***
Library     ${CURDIR}${/}..${/}src${/}RobotLibrary.py


*** Keywords ***

[return]  ${result_run}

when the configuration file "${filename}" is used to run the journey
        ${result_run}= start journey with config   ${filename}

when the route has a route code of "${routecode}"
        use route code  ${routecode}

journey status should be "${status}"
        assert journey status   ${status}

stop with name "${stopName}" should have an arrival time
        assert stop has arrival time    ${stopName}     ${result}

Это не сработало, вот сообщение, которое я вижу в консоли.

(acceptance_test)[root@localhost jsf_acceptance_test]# pybot -L TRACE robot-tests/manual/Mandatory-Delayed-S0-Mandatory-Delayed-S1-329-1/
==============================================================================
Mandatory-Delayed-S0-Mandatory-Delayed-S1-329-1 :: Mandatory-Delayed-S0-Man...
==============================================================================
Mandatory-Delayed-S0-Mandatory-Delayed-S1-329-1.Mandatory-Delayed-S0-Mandat...
==============================================================================
Ensure feedback for stop stop0 on route CGXD                          | FAIL |
Parent suite setup failed:
No keyword with name '${result_run}= start journey with config' found.
------------------------------------------------------------------------------
Ensure feedback for stop stop1 on route CGXD                          | FAIL |
Parent suite setup failed:
No keyword with name '${result_run}= start journey with config' found.
------------------------------------------------------------------------------
Mandatory-Delayed-S0-Mandatory-Delayed-S1-329-1.Mandatory-Delayed-... | FAIL |
Parent suite setup failed:
No keyword with name '${result_run}= start journey with config' found.

2 critical tests, 0 passed, 2 failed
2 tests total, 0 passed, 2 failed
==============================================================================
Mandatory-Delayed-S0-Mandatory-Delayed-S1-329-1 :: Mandatory-Delay... | FAIL |
Suite setup failed:
No keyword with name '${result_run}= start journey with config' found.

2 critical tests, 0 passed, 2 failed
2 tests total, 0 passed, 2 failed
==============================================================================
Output:  /home/pycharm/jsf_acceptance_test/output.xml
Log:     /home/pycharm/jsf_acceptance_test/log.html
Report:  /home/pycharm/jsf_acceptance_test/report.html

Не уверен, как лучше всего это сделать - я относительно новичок в робототехнике, и мне трудно получить ответы на этот вопрос в документации. У кого-нибудь есть идеи по этому поводу? Я рад обновить вопрос с дополнительной информацией, если вам это нужно. Ваше здоровье.


person opensourcegeek    schedule 05.04.2014    source источник


Ответы (1)


Ваши тесты показывают эту ошибку:

No keyword with name '${result_run}= start journey with config' found.

Это означает, что программа запуска тестов роботов встречает эту полную строку в точке, где она ожидает ключевое слово. Вероятно, это связано с тем, что у вас есть только один пробел между = и start journey.... Попробуйте добавить еще один пробел, чтобы переменная и ключевое слово находились в двух отдельных ячейках в таблице тестовых примеров.

${result_run}=  start journey with config
#             ^^ two spaces

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

person Bryan Oakley    schedule 06.04.2014