2017-02-22 4 views
0

Следующие коды находятся в цикле For Loop.Рамка для тестирования роботов: Запустить ключевое слово Если incurs Ключевое слово пользователя не содержит ключевого слова

ELSE Enable Laser ${app_id} ${status} incurs Ключевое слово «Enable Laser» не содержит ключевого слова. Однако, если я изменю его на ELSE IF '${electricalApp}'=='True' Enable Laser ${app_id} ${status}, то ошибки в этой строке нет, но строка Run Keyword If '${electricalApp}'=='True' Enable Laser ${app_id} ${status} прямо ниже, incurs Ключевое слово пользователя Enable Laser не содержит ключевое слово.

\ ${electricalApp} Is App Electrical ${app} 
\ ${status} Set Variable ON 
\ ${validOptic} Set Variable False 
\ ${validOptic} Run Keyword If '${electricalApp}'=='False' Is Optic Valid For App ${app_id} ${app} 
\ ...    ELSE Enable Laser ${app_id} ${status} 
\ Run Keyword If '${validOptic}'=='True' Enable Laser ${app_id} ${status} 
\ ${status} Set Variable OFF 
\ Run Keyword If '${electricalApp}'=='True' Enable Laser ${app_id} ${status} 
\ Run Keyword If '${validOptic}'=='True' Enable Laser ${app_id} ${status} 
\ Exit Current Running Apps 

Прежде чем я поставил код выше для цикла, все работает хорошо.

EDIT: Включить лазер:

Enable Laser [Arguments]  ${app_id} ${status} 
[Documentation]  Turn on or off laser and then check Signal Sync Link. ${status} should be all upper case 
    ${commmand} Catenate SEPARATOR= ${app_id} .0.SignalTx.LaserEnable 
    send cmd ${app_id} a_goto_state ${commmand} ${status} 
    ${inquiry} Catenate SEPARATOR= ${app_id} .0.SignalTx.LaserState 
    ${payload} send cmd ${app_id} r_get ${inquiry} 
    ${parameters} Evaluate $payload.parameters 
    Run Keyword If '${status}'=='ON' Should Be Equal '1' ${parameters} Current state should be 1 
    Run Keyword If '${status}'=='OFF' Should Be Equal '0' ${parameters} Current state should be 0 
    Signal Sync Link Verification ${app_id} ${status} 
+0

Не могли бы вы поделиться с нами кодом этого ключевого слова 'Включить Laser'? –

+0

@JanKovarik спасибо, код добавлен. – Henry

+0

исправьте форматирование кода. Первый блок смешался с кодом, смешанным с текстом. –

ответ

1

Оказалось, что в определении Enable Laser, то [Documentation] потребности быть с отступом.

так:

Enable Laser [Arguments]  ${app_id} ${status} 
    [Documentation]  Turn on or off laser and then check Signal Sync Link. ${status} should be all upper case 
    ${commmand} Catenate SEPARATOR= ${app_id} .0.SignalTx.LaserEnable 
    send cmd ${app_id} a_goto_state ${commmand} ${status} 
+0

Это безумие. Я не заметил и не пытался копировать пасту. В любом случае, я рад, что вы решили проблему. –

+0

Спасибо вам большое. Действительно сумасшедшее, это дерьмо держало меня почти на 1 день. – Henry

Смежные вопросы