一个简单的Selenium例子, 运行起来后Selenium会打开一个指定的页面,然后跳转。
package com.abczww.hs.demo;
import junit.framework.TestCase;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;
public class TestUserRegister extends TestCase {
public TestUserRegister() {
}
WebDriver driver;
protected void setUp() throws Exception {
System.out.println("setup before father class - before class");
// driver = new FirefoxDriver();
driver = new FirefoxDriver();
// Adjust firefox window
// JavascriptExecutor js = (JavascriptExecutor) driver;
// js.executeScript("window.resizeTo(1280,heightscreen.)");
// driver.get("http://localhost:8080/HelloStripes/index.jsp");
}
public void test1() {
driver.findElement(By.id("message")).sendKeys("Test");
driver.findElement(By.id("sayHello")).click();
waitForLoad(By.id("HelloWorld"));
}
public void waitForLoad(final By elementBy) {
WebDriverWait wait = (new WebDriverWait(driver, 30));
wait.until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
boolean loadcomplete = d.findElement(elementBy).isDisplayed();
return loadcomplete;
}
});
}
}
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="stripes" uri="http://stripes.sourceforge.net/stripes.tld" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Hello Stripes!</h1>
<stripes:form action="/Hello.action" method="post">
<div>
<stripes:text name="message" id="message"/>
</div>
<div>
<stripes:submit name="sayHello" value="Say Hello" id="sayHello"/>
</div>
<div><a href="./jsp/register.jsp">Register</a></div>
<div><a href="./ListUser.action">User List</a></div>
</stripes:form>
</body>
</html>