量角器点击隐藏元素" RangeError:超出最大调用堆栈大小"

时间:2015-01-27 11:17:51

标签: angularjs protractor angularjs-e2e

我在尝试点击量角器测试中的隐藏元素时出现问题。

以下是要返回的错误消息,以及导致错误消息的代码段。任何关于为什么抛出这个错误的想法都将非常感激。

RangeError: Maximum call stack size exceeded


browser.driver.executeScript("return arguments[0].click()", bank_page.boaClick);

和" bank_page.boaClick()"被引用为页面Object上的变量,其片段如下所示:

 boaClick: { get: function () { return element.all(by.model('bankConnection.bank')).get(0); }},

以下是我尝试使用该变量引用的片段:

<input type="radio" ng-model="bankConnection.bank" ng-value="bank" class="ng-valid ng-dirty" name="00D" value="[object Object]">

我基本上只是想能够点击这个单选按钮,但是按钮是一个隐藏的元素,所以在线搜索后,第一个&#34; browser.driver.executeScript&#34;调用似乎是实现这一目标的最佳选择,但是我已经实现了它,因为我已经实现了它。

1 个答案:

答案 0 :(得分:6)

executeScript不会占用页面对象。您需要传入原始web_element。 (量角器的元素查找器也不起作用)

尝试:

browser.driver.executeScript("return arguments[0].click()", bank_page.boaClick.get().getWebElement());