0

你好,

我正在使用带有 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 变量没有获得任何存储在其中的值。

4

2 回答 2

1

看起来你有引用问题

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

'与内部交换"

于 2013-06-19T12:58:07.780 回答
0

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

克伦达图

于 2013-06-19T19:25:39.813 回答