Link has target '_blank', which is not supported in Selenium

详细描述:如果你要点击的链接代码是这样:

<a target="_blank" href="http://www.baidu.com" >&nbsp;</a>,那么由于target="_blank",点击这个链接,会打开一个新的窗体。在新窗体中打开对应的href。但是由于slenium不能保证正确找到新打开的窗体,会报这个错。

[warn] Link has target '_blank', which is not supported in Selenium! Randomizing target to be: selenium_blank28995

这样,在如果需要操作新窗体中的元素的话,slenium报错说找不到元素之类的。
当Link有这个属性时,会打开新浏览器窗口,如果target是"_blank"的话,Selenium不能找到打开的新窗  口,如果target有一个明确的名字的话,selenium就能够找到这个打开的新窗口并在其上进行操作了。
 "_blank"的话,selenium不能保证一定找到找准这个窗口,所以给出警告,如果只有这样的一个窗口和主窗口,selenium通过一些变通的方法也能找到该窗  口,但是不保证。
关于这个问题的解决办法,有前辈已经总结:

http://bbs.51testing.com/thread-206903-1-1.html

我觉得其中第一种方法取href再open的方式最简单也最实用。

录制时,会跳出多个窗口,此时要怎样处理?
   存在四种解决方法,可以参考http://www.boobooke.com/bbs/viewthread.php?tid=41824&highlight=selenium中的第七集
   具体方法如下:(1)java中可用如下的代码:String[] titles = selenium.getAllWindowTitles();               //得到所有窗口的标题
        selenium.selectWindow("title="+titles[titles.length-1]);   //选择最后打开的一个窗口
        selenium.close();                                               //关闭最后打开的一个窗口 
        selenium.selectWindow("null");                            //重新聚集在最开始的一个窗口(只有两个窗口的时候)
   (2)java中可用如下的代码:selenium.click("link=ÂÛ̳"); 换成如下的两行代码
            String url = selenium.getAttribute("link=ÂÛ̳@href");
             selenium.open(url);
                         注:此方法也存在一定的缺陷,就是不能验证click点击事件是否正确。  
   (3)利用javascript去掉原代码中的target="_blank"的属性