如何使用硒类型的方法?

时间:2012-12-15 23:17:24

标签: java selenium

我有一个带有输入文本字段的JSP页面。

<table>
    <tr>
        <td><input type="text" id="searchText" name="searchInput"/></td>
    </tr>
</table>

我编写了一个selenium测试用例,用于验证搜索输入文本是否存在。

public class UIRecipeListTest extends SeleneseTestBase {

    @Before
    public void setup() {
        WebDriver driver = new FirefoxDriver(new FirefoxBinary(new File(
                "C:\\Program Files (x86)\\Mozilla Firefox 3.6\\firefox.exe")), new   FirefoxProfile());

        String baseUrl = "http://localhost:8080/RecipeProject/";
        selenium = new WebDriverBackedSelenium(driver, baseUrl);
    }

    @Test
    public void testShowRecipes() {
        verifyTrue(selenium.isElementPresent("searchText"));    
        selenium.type("searchText", "salt");
    }
}

verifyTrue测试返回true。但是,selenium.type测试失败并出现此错误:

com.thoughtworks.selenium.SeleniumException: Element searchText not found

我该怎么做才能使测试工作?

1 个答案:

答案 0 :(得分:7)

第一个参数需要是一个选择器。 searchText不是有效的CSS或xpath选择器。

你会使用selenium.type("css=input#searchText", "salt");

之类的东西

还想指出你似乎是在Selenium的两个版本之间。

selenium.type(String,String)来自Selenium 1 API。你应该保持1个版本,如果它是Selenium 2,你需要做类似的事情,

WebElement element = driver.findElement(By.id("searchText")) 并使用 element.sendKeys("salt");

来源: Selenium API type(String,String)