我应该如何使用webdriver处理html占位符属性场景自动化

时间:2012-06-06 19:11:29

标签: selenium webdriver

嗨我需要自动化文本输入字段在那里的sceanrio,其中包含文本 - 显示“在此处输入”。

<input class="textbox" type="text" value="" placeholder="type here" name="q">

我需要验证 1)显示文字 - “在这里输入” 2)当焦点移动到此文本字段时,文本输入字段不显示 - “在这里输入”

1 个答案:

答案 0 :(得分:1)

您可以通过简单的JavaScript测试浏览器是否支持placeholder元素的<input>属性。这是间接测试,但据我所知,您无法通过Selenium测试占位符文本。但它应该是绝对足够的:

function supportsInputPlaceholder() {
    var input = document.createElement('input');
    return 'placeholder' in input;
}

(摘自http://diveinto.html5doctor.com/detect.html#input-placeholder

因此:

// only if your driver supports JS
JavascriptExecutor js = (JavascriptExecutor)driver;
String placeholderTest = "return 'placeholder' in document.createElement('input')";
assertTrue(js.executeScript(placeholderTest));