【问题标题】:RobotFramework&SeleniumLibarary. How to execute javascript with my webElement?RobotFramework&SeleniumLibarary。如何使用我的 webElement 执行 javascript?
【发布时间】:2020-05-21 21:01:17
【问题描述】:

这是我的代码:

Go To Confirm
[Arguments]     ${tr}
${btns}    Call Method
...        ${tr}
...        find_elements_by_tag_name
...        button

FOR    ${btn}   IN   @{btns}
${btnText}   get text   ${btn}
run keyword if     '${btnText}'=='confirm'    click element   ${btn}
exit for loop if   '${btnText}'=='confirm'
END

有两个元素重叠。当我“单击元素”时。收到此错误:

ElementClickInterceptedException: Message: element click intercepted: 
Element <button class="btn btn-success btn-sm" ng-show="selectedClassify.label === 
'waitConfirm' &amp;&amp; (!buttonConfig || buttonConfig &amp;&amp; 
buttonConfig.confirmScheme == 1)" ng-click="confirmBtn(row)">...</button> 
is not clickable at point (768, 581). 
Other element would receive the click: 
<footer class="infi-footer display-none ng-scope display-block" ng-if="!notFooter &amp;&amp; 
!hideLayout" ng-class=" {true: 'display-block'}[!notFooter &amp;&amp; !hideLayout]">... 
</footer> 
(Session info: headless chrome=80.0.3987.163) Stacktrace: #0 0x55817bb9b7a9 <unknown>

我想这样修复它:

WebElement ele = driver.findElement(By.xpath("element_xpath"));        
JavascriptExecutor executor = (JavascriptExecutor)driver; 
executor.executeScript("arguments[0].click();", ele);

或者这个:

WebElement myelement = driver.findElement(By.id("navigationPageButton")); 
JavascriptExecutor jse2 = (JavascriptExecutor)driver; 
jse2.executeScript("arguments[0].scrollIntoView()", myelement);

我在文档中找到了关键字“执行 Javascript”。但它没有关于webElement的参数。

如何使用我的 webElement 执行 javascript?

【问题讨论】:

    标签: selenium robotframework


    【解决方案1】:

    Execute Javascript 允许您传递参数。在脚本本身中,您可以通过 arguments 数组引用参数。

    在你的情况下,它看起来像这样:

    Execute Javascript    arguments[0].click()  ARGUMENTS  ${btn}
    

    【讨论】:

      猜你喜欢
      • 2020-08-18
      • 2021-12-08
      • 1970-01-01
      • 2020-03-30
      • 2013-05-25
      • 2017-04-16
      • 2021-02-25
      • 1970-01-01
      • 2019-10-11
      相关资源
      最近更新 更多