机器人框架:从谷歌位置API中选择元素

时间:2017-04-19 18:35:35

标签: robotframework

我正在尝试从google API中选择值。 我的python版本是2.7。我正在为谷歌浏览器编写脚本。

当我开始在文本框中键入内容时,文本框会显示一些可用值。就像我输入" Del"然后它显示了印度德里的建议。

现在我已编写脚本,直到在文本字段中输入文本,并且它还显示可用值。但由于它不是下拉列表,我无法使用名称或索引从该列表中选择值。 我试图按下箭头键,但使用ASCII值作为// 40按值为(在文本字段中。

任何人都可以建议解决方案选择值或按向下箭头键。

Click element    ${Location_Input}
Press Key    ${Location_Input}    P
sleep    4Seconds
Press Key    ${Location_Input}    \\40

结果:" P("

1 个答案:

答案 0 :(得分:0)

Press Key ${Location_Input} \\40完全按照文档编写,即按代码(代表的ASCII字符\\40。查看任何ASCII表: http://robotframework.org/Selenium2Library/Selenium2Library.html#Press%20Key

如果要按非ASCII键,则会变得有点困难。 我建议写一下原始Selenium2Library上的扩展库如下:

# ExtendedSelenium.py
from Selenium2Library import Selenium2Library
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys


class ExtendedSelenium(Selenium2Library):

    def __init__(self):
        super(ExtendedSelenium, self).__init__()

    def press_down_arrow(self):
        """ Emulates action "press down arrow on keyboard".
        """
        ActionChains(self._current_browser()).send_keys(Keys.ARROW_DOWN, Keys.NULL).perform()

...然后从你的RF代码中调用它:

Library    ExtendedSelenium.py

*** Test Cases ***
Your Test
    ...
    Press Down Arrow
    ...