使用selenium在pre HTML标记中输入文本

时间:2018-03-20 03:40:55

标签: html css selenium

我正在尝试使用selenium JAVA输入文本,并且HTML中有预标记。sendkeys无法正常工作。我还有其他方式可以在selenium输入带有sendkeys选项的文本吗?

输入文字前的HTML

<pre class=" CodeMirror-line ">
<span style="padding-right: 0.1px;">
<span cm-text="">​</span>
</span>

输入文字&#34;排名(价格)&#34; HTML是

<pre class=" CodeMirror-line ">
<span style="padding-right: 0.1px;">
<span class="cm-operator">rank</span>"("
<span class="cm-variable">price</span>")"
</span>

1 个答案:

答案 0 :(得分:0)

WebElement wb = driver.findElement(By.xpath("//pre[@class='CodeMirror-line']"));
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("arguments[0].value='(222)222-2222';", wb);

请告诉我这是否适合您。 Webdriver提供了javscript实现库,以便我们可以使用javascript在浏览器上执行操作,这是webdriver本机API无法实现的。在Web自动化测试服务中,我们遇到了许多此类问题,我们必须超越webdriver本机API并且必须使用javscript方法。