如何在Robot Framework RIDE中执行鼠标右键单击?

时间:2017-11-08 08:05:30

标签: selenium robotframework

我'在RIDE中使用硒编写自动化测试。我需要以某种方式右键单击页面上的元素,然后从上下文菜单中单击选项。

是否有任何适用于Robot Framework的库可能对此有帮助? 如果没有,您能否以其他方式帮助我如何使用现有关键字?

2 个答案:

答案 0 :(得分:0)

我找到了解决方案。我写了一个Selenium2Library的扩展名:

from robot.api.deco import keyword
from selenium import webdriver
from selenium.webdriver import ActionChains
from Selenium2Library import Selenium2Library

class ExtendedSeleniumLibrary(Selenium2Library):
    @keyword("Right Click Element")
    def Right_Click(self, xpath):
        driver = self._current_browser()

        actionChains = ActionChains(driver)

        element=driver.find_element_by_xpath(str(xpath))

        actionChains.context_click(element).perform()

现在,我没有使用Selenium2Library,但是我的ExtendedSeleniumLibrary在课堂上使用了新方法并且它有效。

答案 1 :(得分:-1)

机器人技术:

WebElement SighnPad = (appium.findElement(By.id(Lib.getProperty(CONFIG_PATH, "Sighnparent"))).       //parent
                       findElement(By.className(Lib.getProperty(CONFIG_PATH, "sighnchild"))));  //child

SighnPad.click();

Robot rightclick = new Robot();

rightclick.delay(1500);

rightclick.mousePress(InputEvent.BUTTON1_DOWN_MASK);
rightclick.mouseMove(630, 420);
rightclick.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);