python - 在机器人框架中退出 For 循环
问题描述
使用机器人框架,我正在尝试创建一个 FOR 循环,其中从列表中选择一个随机值。选择随机值后,打开该值的页面,然后我想验证该方可用的数据等。如果值匹配,则循环应该退出。
目前,我可以选择一个随机值并转到该值页面,但由于 FOR 循环从列表中找到另一个值而导致脚本失败,因此无法执行进一步的操作。
@{ORGANISATIONAL_NAME} JSK MARKETING KEDARNATH COMOTRADE PONDICHERRY SRI LAKSHMI
View Basic Info of the Party
${value} = Evaluate random.choice($ORGANISATIONAL_NAME) random
input text ${SEARCH_BAR} ${value}
log to console \nvalue: ${value}
click element ${SEARCH_BUTTON}
log ${value}
Run Keyword If '${value}' == 'JSK MARKETING' click element ${JSK_MARKETING}
... ELSE IF '${value}' == 'KEDARNATH COMOTRADE' click element ${KEDARNATH_COMOTRADE}
... ELSE IF '${value}' == 'PONDICHERRY SRI LAKSHMI' click element ${PONDICHERRY_SHRI_LAKSHMI}
... ELSE log to console condition didn't met
FOR ${value} IN @{ORGANISATIONAL_NAME}
log to console ${value}
click element ${BASIC_INFO}
wait until page contains Summary
Exit For Loop If '${value}' == 'JSK MARKETING'
click element ${BASIC_INFO}
wait until page contains Summary
Exit For Loop If '${value}' == 'KEDARNATH COMOTRADE'
click element ${BASIC_INFO}
wait until page contains Summary
Exit For Loop If '${value}' == 'PONDICHERRY SRI LAKSHMI'
END
需要对从列表中选择的随机值执行验证。
解决方案
您的问题是您首先选择了一个随机值。然后按照创建的顺序迭代列表。
for循环的原因是什么?因为我不明白你想在循环中做什么
编辑:
如果您的列表中只有这 3 个值,您可以这样做:
View Basic Info Of The Party
${value} = Evaluate random.choice($ORGANISATIONAL_NAME) random
Input Text ${SEARCH_BAR} ${value}
Log To Console \nvalue: ${value}
Click Element ${SEARCH_BUTTON}
Log ${value}
Run Keyword If '${value}' == 'JSK MARKETING' Click Element ${JSK_MARKETING}
... ELSE IF '${value}' == 'KEDARNATH COMOTRADE' Click Element ${KEDARNATH_COMOTRADE}
... ELSE IF '${value}' == 'PONDICHERRY SRI LAKSHMI' Click Element ${PONDICHERRY_SHRI_LAKSHMI}
Log To Console ${value}
Click Element ${BASIC_INFO}
Wait Until Page Contains Summary
如果您要在列表中包含更多值,并且只想在这 3 种情况之一中执行操作,请尝试执行以下操作:
View Basic Info Of The Party
${value} = Evaluate random.choice($ORGANISATIONAL_NAME) random
Input Text ${SEARCH_BAR} ${value}
Log To Console \nvalue: ${value}
Click Element ${SEARCH_BUTTON}
Log ${value}
Run Keyword If '${value}' == 'JSK MARKETING' Click Element ${JSK_MARKETING}
... ELSE IF '${value}' == 'KEDARNATH COMOTRADE' Click Element ${KEDARNATH_COMOTRADE}
... ELSE IF '${value}' == 'PONDICHERRY SRI LAKSHMI' Click Element ${PONDICHERRY_SHRI_LAKSHMI}
... ELSE Log To Console condition didn\'t met
Run Keyword If '${value}' == 'JSK MARKETING' or '${value}' == 'KEDARNATH COMOTRADE' or '${value}' == 'PONDICHERRY SRI LAKSHMI' Run Keywords
... Log To Console ${value} AND
... Click Element ${BASIC_INFO} AND
... Wait Until Page Contains Summary
我希望这有帮助。
推荐阅读
- javascript - 在纯JS中动态隐藏具有相同类的对象
- android - Android Studio:无法解析“上下文”中的方法“getWindowManager”
- laravel - 使用 laravel 搭建登录系统
- c# - 解析响应 qnamaker
- php - 有人可以在这个地方帮助我吗?在 laravel 5.8 版中运行命令“composer require laravel / socialite”时出现错误
- python - 如何在 Graphviz 中指定边连接到节点的位置
- java - 我的项目需要哪些接口、抽象类和类?
- asp.net-core - 在 IIS 上发布 asp.net 核心项目时出错
- python - 返回空列表的方法
- javascript - 从 Excel 公式转换为 JavaScript 的问题