2016-08-24 1 views
0

RobotFramework에서 변수를 출력하고 Empty (비어 있음) 또는 Empty (비어 있음)로 비교하지만 오류가 발생했습니다. 서버에서 명령을 실행하려고합니다.roboframework 스크립트 문제

로봇 스크립트 :

${redRelease} Execute Command As Root And Return Result ${SERVER} cat /etc/redhat-release | grep '6.7' 

Run Keyword If '${redRelease}'=='${Empty}' Should Contain xxx yyyy 

하지만 오류가 점점 오전 :

Evaluating expression '' 
Red Hat Enterprise Linux Server release 6.7 (Santiago)'==''' failed: 
SyntaxError: no viable alternative at character ''' (<string>, line 1) 

가 어떻게 빈 빈 또는 비로 grep 명령의 출력을 비교할 수 있습니까?

+0

루트 및 리턴 결과로 명령 실행이하는 일은 무엇입니까? 내 추측은 어떻게 든 서버로부터의 응답을 수정한다는 것입니다. – Pekka

+0

예, 루트 사용자로 명령을 실행하고 결과를 반환합니다. – Bhv

+0

SSHLibrary에서 명령 실행을 사용하면 코드가 작동합니다. '$ {Empty}'가 '' '가되는 방식을 이해하지 못합니다. $ {Empty}를 다른 키워드로 설정하지 않은 것을 확인하기 위해 "Run Keyword If ...."를 실행하기 직전에 $ {Empty}를 기록하십시오. – Pekka

답변

0

RoboFramework는 동일한 처리에 도움이되는 내장 라이브러리 "SSHLibrary"를 제공합니다. 예를 들어

:

*** Settings *** 
Library   SSHLibrary 


*** Variables *** 
${HOST}   127.0.0.1 
${USERNAME}  labadmin 
${PASSWORD}  root123 
${command}  cat /etc/*release 

*** Test Cases *** 

Login_to_server 
    Open Connection ${HOST} 
    Login ${USERNAME} ${PASSWORD} 
    ${output} Execute Command ${command} 
    Should Contain ${output} "Ubuntu" 

는 설정에 따라 위의 코드를 수정합니다.