您的位置:首页 > 其它

WebElement.getText()为空解决方法

2016-06-15 18:42 232 查看

WebElement.getText()为空解决方法

博客分类:
Selenium WebdriverwebdrivergetTextselenium 

当使用getText()获取一个普通的链接文本时:

Html代码  


<a href="http://www.baidu.com">baidu</a>  

如果得到的文本只为空,而非我们期望的baidu.那么尝试使用WebElement.isDisplayed()时候,将会得到false的结果.再尝试使用getAttribute("href"),发现能够争取获取href的值.由此可以说明:

WebDriver判定isDisplayed为false的元素,那么getText()将为空
isDisplayed为false的元素,依然可以通过getAttribute()方法获取元素的属性.
所以,当getText()为空的时候,可以通过两种方法获取链接的文本

修改页面当前元素,或者当前元素父元素的CSS,使元素的isDisplayed()值为true.
使用getAttribute("innerHTML")获取文本值
由此我们也可以知道,isDisplayed为false,是指那个元素是存在的,只是webdriver认为不见.回到关键问题,webdriver是如何判断一个元素是否displayed,请参照:

http://www.w3.org/TR/webdriver/#determining-visibility

 

事实上,我所要测试的link,在运行的时候并非隐藏而是可见的,运行中获取的CSS display值为block而非none.

大概是因为我的目标链接是在一个弹出下拉菜单中的原因

 

本文出自"lijingshou"博客,转载请务必保留此出处http://lijingshou.iteye.com/blog/2082704
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: