⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userwebtest.java

📁 springlive ch8
💻 JAVA
字号:
package org.appfuse.web;

import java.util.List;
import java.util.Locale;

import net.sourceforge.jwebunit.WebTestCase;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.appfuse.dao.UserDAO;
import org.appfuse.model.User;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class UserWebTest extends WebTestCase {
    private final Log log = LogFactory.getLog(UserWebTest.class);
    /*
    static {
        Container container = new Tomcat5xContainer();
        container.setHomeDir("/opt/dev/tools/jakarta-tomcat-5.0.28");
        container.setWorkingDir("build/test/tomcat5x");
        WAR war = new WAR("dist/myusers.war");
        container.addDeployable(war);
        container.setOutput(new File("build/test/cargo.log"));
        container.start();
    }*/

    public UserWebTest(String name) {
        super(name);
        getTestContext().setBaseUrl("http://localhost:8080/myusers");
        getTestContext().setResourceBundleName("messages");
        getTestContext().setLocale(Locale.GERMAN);
        getTestContext().getWebClient().setHeaderField("Accept-Language", "de");
    }
    
    public void testWelcomePage() {
        beginAt("/");
        //assertTitleEquals("MyUsers ~ Welcome");
        assertTitleEqualsKey("index.title");
    }
    
    public void testAddUser() {
        beginAt("/editUser.html");
        //assertTitleEquals("MyUsers ~ User Details");
        assertTitleEqualsKey("userForm.title");
        setFormElement("firstName", "Spring");
        setFormElement("lastName", "User");
        submit("save");
        //assertTextPresent("saved successfully");
        assertTitleEqualsKey("userList.title");
    }
    
    public void testListUsers() {
        beginAt("/users.html");     
        
        // check that table is present
        assertTablePresent("userList");

        //check that a set of strings are present somewhere in table
        assertTextInTable("userList",
                          new String[] {"Spring", "User"});
    }
    
    public void testEditUser() {
        beginAt("/editUser.html?id=" + getInsertedUserId());
        assertFormElementEquals("firstName", "Spring");
        submit("save");
        assertTitleEqualsKey("userList.title");
        //assertTitleEquals("MyUsers ~ User List");
    }
    
    public void testDeleteUser() {
        beginAt("/editUser.html?id=" + getInsertedUserId());
        //assertTitleEquals("MyUsers ~ User Details");
        assertTitleEqualsKey("userForm.title");
        submit("delete");
        //assertTitleEquals("MyUsers ~ User List");
        assertTitleEqualsKey("userList.title");
    }
    
    /**
     * Convenience method to get the id of the inserted user
     * Assumes last inserted user is "Spring User"
     */
    public String getInsertedUserId() {
        String[] paths = {"/WEB-INF/applicationContext*.xml"};
        ApplicationContext ctx = 
            new ClassPathXmlApplicationContext(paths);
        List users = ((UserDAO) ctx.getBean("userDAO")).getUsers();
        // assumed that user inserted in testAddUser() is last user
        return ""+((User)users.get(users.size()-1)).getId();
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -