bsp*_*oel 4 selenium webdriver
假设我的网页上有以下代码段:
<p>这是一些文字</p>
我希望WebDriver在此文本中选择"some",就像用户选择它一样.我该怎么办?我知道如何获得<p>元素:
WebElement editable = getDriver().findElement(By.id("someId"));
editable = editable.findElement(By.tagName("p"));
System.out.println(p.getText());
Run Code Online (Sandbox Code Playgroud)
println打印"这是一些文字".
我尝试向元素发送密钥,并且曾经工作(在selenium 2.0b中),但我现在使用selenium 2.6.0,它停止工作:
editable.sendKeys(Keys.chord(Keys.SHIFT, Keys.LEFT));
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?我正在使用FirefoxDriver.
我使用Javascript为Firefox做过一次.基本上我使用Firefox中的范围对象来选择文本.根据要选择的内容更改开始和结束范围索引.这在IE中不起作用,因为在IE中选择范围在概念上是不同的.我没有方便的IE代码但是因为你关注FF,你可以给它一个机会.如果您对IE文本范围感兴趣,请告诉我.
String script = "var range = document.createRange();" +
"var start = document.getElementById('idofthedivthatcontainstext');" +
"var textNode = start.getElementsByTagName('p')[0].firstChild;" +
"range.setStart(textNode, 8);" +
"range.setEnd(textNode, 13);" +
"window.getSelection().addRange(range);";
((JavascriptExecutor)driver).executeScript(script);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5411 次 |
| 最近记录: |