Can";运行关键字If";不能在Robotframework代码的关键字部分下运行

Can";运行关键字If";不能在Robotframework代码的关键字部分下运行,robotframework,Robotframework,我试图执行这个机器人框架代码的和平。 我总是在屏幕上看到一个错误 “运行关键字”If语句 错误消息:如果“${checkmessageoutput}”==”预期的飞机ID,即找到MLH001“”,则没有名为“运行关键字”的关键字 任何帮助都将不胜感激 不能使用吗 *** Settings *** Documentation A Test of the TAS-APP-FDD-3 ... Kari Dec 2014 Suite Setup fdd

我试图执行这个机器人框架代码的和平。 我总是在屏幕上看到一个错误 “运行关键字”If语句 错误消息:如果“${checkmessageoutput}”==”预期的飞机ID,即找到MLH001“”,则没有名为“运行关键字”的关键字

任何帮助都将不胜感激

不能使用吗

*** Settings ***

Documentation     A Test of the TAS-APP-FDD-3
...               Kari Dec 2014

Suite Setup       fdd attach to application

Library           BuiltIn
Library           fddlibrary

*** Test Cases ***
Send a valid flight plan
    [Template]  send a flightplan
    FI352   \

Fill out a flight plan missing callsign
    [Template]  send a flightplan
    /   Expected aircraft ID, i.e. MLH001  

*** Keyword ***
fill out flight plan
     fdd select msg
     fdd msg select fpl
     fdd msg fpl priority                  FF
     fdd msg fpl ssr                       1234
     fdd msg fpl flightrules               I
     fdd msg fpl flighttype                S
     #fdd msg fpl callsign                  FI351
     fdd msg fpl aircrafttype              A310
     fdd msg fpl wakecategory              H
     fdd msg fpl equipmentcommnav          SHIR
     fdd msg fpl equipmentsurveillance     S
     fdd msg fpl departureairport          BIKF
     fdd msg fpl departuretime             0800
     fdd msg fpl crusingspeed              M080
     fdd msg fpl cruisinglevel             F300
     fdd msg fpl route                     ALDAN RATSO
     fdd msg fpl destinationairport        EKCH
     fdd msg fpl eet                       0300
     fdd msg fpl otherinformation          Flightplan 1

send a flightplan
    [arguments]     ${callsign}     ${checkmessageoutput}  
    fill out flight plan
    fdd msg fpl callsign              ${callsign}
    check flight plan                 ${checkmessageoutput}
    Run Keyword If '${checkmessageoutput}' == 'Expected aircraft ID, i.e. MLH001'     log to console     \nRun send flight plan
    ELSE  log to console     \nRun send no flight plan      

check flight plan
    [arguments]                     ${checkmessageoutput} 
    fdd msg fpl check message
    ${message}=     fdd msg fpl return message
    Should be equal     ${message}  ${checkmessageoutput}       

send flight plan
    fdd msg fpl send message

display strip     
    fdd select flights
    fdd flights display electronic strip

仔细查看错误消息:

No keyword with name 'Run Keyword If '${checkmessageoutput}' == 'Expected aircraft ID, i.e. MLH001'' found.
注意,它并不是说没有名为
runkeywordif
的关键字,而是说
runkeywordif'${检查…
。换句话说,您在关键字及其参数之间缺少分隔符,因此它认为整个句子是一个关键字。在
运行关键字If
之后添加另一个空格或制表符或您正在使用的任何内容


这些类型的错误正是我建议使用管道分离格式的原因——这种类型的错误几乎不会发生,而且诊断起来更容易。

库内置设置是不必要的,因为它是自动导入的。