Php 使用facebook webdriver清除文本区域

Php 使用facebook webdriver清除文本区域,php,webdriver,facebook-webdriver,Php,Webdriver,Facebook Webdriver,我正在使用PHP包来处理一些web自动化测试 我无法清除元素的内容,选项已用尽 鉴于: dom元素content $element成为Facebook\WebDriver\webdriverelation实例 我已尝试调用RemoteWebElement::clear(): 我已尝试发送退格键: var_dump($element->getTagName()); // string(8) "textarea" var_dump($element->getText()); /

我正在使用PHP包来处理一些web自动化测试

我无法清除
元素的内容,选项已用尽

鉴于:

  • dom元素
    content
  • $element
    成为
    Facebook\WebDriver\webdriverelation
    实例
我已尝试调用
RemoteWebElement::clear()

我已尝试发送退格键:

var_dump($element->getTagName()); // string(8) "textarea"
var_dump($element->getText());    // string(7) "content"

for ($i = 0; $i < mb_strlen($element->getText()); $i++) {
    $element->sendKeys(WebDriverKeys::BACKSPACE);
}

var_dump($element->getText());    // string(7) "content"    
var_dump($element->getTagName());//字符串(8)“文本区域”
var_dump($element->getText());//字符串(7)“内容”
对于($i=0;$igetText());$i++){
$element->sendKeys(WebDriverKeys::BACKSPACE);
}
var_dump($element->getText());//字符串(7)“内容”

我有点不知所措。有什么想法吗?

要查询文本区域的内容,请使用
$element->getAttribute('value')
而不是
$element->getText()

RemoteWebElement::getText()
仅用于获取加载页面时存在的文本节点。至少根据观察到的行为,这是我最好的猜测

RemoteWebElement::getAttribute('value')
获取texarea的当前内容。我没有猜到这是正确的解决方案,因为texarea元素在HTML中没有value属性

var_dump($element->getTagName()); // string(8) "textarea"
var_dump($element->getText());    // string(7) "content"

for ($i = 0; $i < mb_strlen($element->getText()); $i++) {
    $element->sendKeys(WebDriverKeys::BACKSPACE);
}

var_dump($element->getText());    // string(7) "content"