Я хотел бы использовать платформу Robot для автоматизации шага, когда следующая команда выполняется в cmd:
docker-compose logs --no-color --tail=1 the-server
Результатом предыдущей команды будет журнал сервера с именем the-server в файле docker -compose.yml.
После того, как я хотел бы проверить, есть ли в ответе этой команды строка Started the-server
, чтобы проверить, работает ли сервер .
Я использую следующий файл робота:
*** Settings ***
Library Process
Library OperatingSystem
Suite Setup log running on ${properties.hostname}
Suite Teardown Terminate All Processes kill=True
Variables C:/Users/TheUser/Desktop/CheckOutRegression/properties.py
*** Test Cases ***
Check if the-server is up
${result} Wait Until Keyword Succeeds 10x 20s Check The-Server
*** Keyword ***
Check The-Server
${resultOfcmd} Run Process docker-compose logs --no-color --tail\=1 the-server shell=yes cwd=${properties.pathToDocker}
Should Contain ${resultOfcmd} 'Started the-server' PASS
Log To Console ${resultOfcmd}
Тестовый случай всегда завершается ошибкой:
Ключевое слово 'Check The- Ошибка сервера после повторной попытки 10 раз. Последняя ошибка: TypeError: объект «ExecutionResult» не повторяется
также я не уверен, содержит ли переменная {resultOfcmd}
выходные данные команды docker-compose logs --no-color --tail\=1 the-server
.
Кто-нибудь может помочь?