使用Selenium的JavaScript命令,获取错误

时间:2013-06-19 12:54:53

标签: java javascript selenium selenium-ide

您好,

我正在使用firefox与Selenium IDE合作,但我需要点击的其中一个链接的目标是'_blank',Selenium IDE似乎跟着它或它失去了它的位置。我尝试使用以下代码来删除链接中的目标并打开它:

<tr>
   <td>getEval</td>
   <td>this.page().findElement('css=html body#reportViewer div#frame.column div.content div#display.body div#reportViewFrame.column div.content div.body center div#reportContainer div div div span span a span').removeAttribute('target')</td>
   <td></td>
</tr>
<tr>
   <td>storeEval</td>
   <td>this.page().findElement('css=html body#reportViewer div#frame.column div.content div#display.body div#reportViewFrame.column div.content div.body center div#reportContainer div div div span span a span').href</td>
   <td>url</td>
</tr>
<tr>
   <td>getEval</td>
   <td>getEval | this.page().findElement('xpath=//html/body/div[18]/div[9]/div[2]/div/div[9]/div[2]/center/div/div/div[2]/div/span/span/a').href = 'javascript:window.open('${url}','myWindow')'</td>
   <td></td>
</tr>
<tr>
   <td>click</td>
   <td>css=html body#reportViewer div#frame.column div.content div#display.body div#reportViewFrame.column div.content div.body center div#reportContainer div div div span span a span</td>
   <td></td>
</tr>

我得到的错误是:

[error] Threw an exception: invalid assignment left-hand side

错误发生在第二个“getEval”语句中(第12-15行)。什么都有帮助,谢谢。

IDE说这个脚本:

[info] script is: getEval | this.page().findElement('xpath=//html/body/div[18]/div[9]/div[2]/div/div[9]/div[2]/center/div/div/div[2]/div/span/span/a').href = "javascript:window.open(\"null\",\"myWindow\")" 
正在执行

,url变量没有存储任何值。

2 个答案:

答案 0 :(得分:1)

看起来你有引用问题

'javascript:window.open('$url','myWindow')'

将内部'"

交换

答案 1 :(得分:0)

您是否可以发布指向您尝试从中获取链接的网页的链接?您可能尝试的一件事是将值存储在{url}后,执行echo | $ {url} |在此之后命令,然后逐步完成测试,看看它是否实际返回了您希望它返回的内容。

Klendathu