我可以从列表中选择一个随机数,但是现在我不知道如何使用if-else语句,因此它应该与条件匹配以获取该数字的更多详细信息。
我尝试使用“ Run Keyword If”命令执行此操作,但对我来说不起作用。还尝试过使用“ For循环”,但效果也不理想。
*** Variables ***
@{PARTY} ABC XYZ RTY DOG
*** Test Cases ***
View all Details
${value} = Evaluate random.choice($PARTY) random
input text ${SEARCH_BAR} ${value}
log to console \nvalue: ${value}
click element ${SEARCH_BUTTON}
:for ${ELEMENT} IN @{PARTY}
\ log ${ELEMENT}
\ run keyword if '@{ELEMENT}' == 'ABC'
\ ... else if '@{ELEMENT}' == 'XYZ'
\ ... else if '@{ELEMENT}' == 'RTY'
\ ... else '@{ELEMENT}' == 'DOG'
预期结果:现在,当选择随机值时,应该将该值与列表进行比较,并且当条件为true时,我应该能够单击该元素以获取该方的更多详细信息。
实际结果:选择了随机值,并且FOR循环不包含任何关键字。
答案 0 :(得分:3)
您有几个问题。
@{ELEMENT
而不是标量变量进行比较。Run Keyword If
语句中,如果条件为true,则没有关键字可以运行。 ELSE IF
行也一样。else if
应该大写,因为它是保留关键字。ELSE
完全不需要条件,它可以处理以前条件未处理的所有情况。 ${value}
,但不要使用它。遍历列表将一次给您所有条件true
。如果要使用随机值,则根本不需要for循环。代码应如下所示:
View all Details
${ELEMENT} = Evaluate random.choice($PARTY) random
log ${ELEMENT}
Run Keyword If '${ELEMENT}' == 'ABC' Your Keyword One Here
... ELSE IF '${ELEMENT}' == 'XYZ' Your Keyword Two Here
... ELSE IF '${ELEMENT}' == 'RTY' Your Keyword Three Here
... ELSE Your Keyword Four Here