2

嗨,我需要自动化一个场景,其中有一个文本输入字段,其中显示一个文本 - “在此处输入”。

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

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

4

1 回答 1

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));
于 2012-11-27T13:21:40.067 回答