实验七——Web应用测试(bookstore项目上完成)

实验七——Web应用测试(bookstore项目上完成)

1、  编写单元测试用例,对用户注册功能的Action层进行测试。(注意:测试用例应考虑成功和失败的情况)

先在原来的UserAction类加入判断代码当用户名或密码为空时则注册失败:

public String register() throws Exception{

     if("" == user.getUsername()||""==user.getPassword()){

         return "error";

     }

     else{

     userService.saveUser(user);

     return SUCCESS;

     }

}

然后在UserAction类上创建一个测试类:

package org.easybooks.bookstore.action;

import org.easybooks.bookstore.service.IUserService;

import org.easybooks.bookstore.vo.User;

import org.junit.Test;

import org.springframework.beans.factory.BeanFactory;

import org.springframework.context.support.ClassPathXmlApplicationContext;

/*

 * 用户注册(成功)

*  Actor:王燕红

 * */

public class UserActionTest {

@Test

public void testRegisterSuccess() throws Exception {

BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml");

    

     User user=new User();

     user.setUsername("WYH");

     user.setPassword("123456");

     user.setSex("女");

     user.setAge(23);

    

     UserAction userAction=new UserAction();

     userAction.setUser(user);

     userAction.setUserService((IUserService)factory.getBean( "userService" ));

     String result=userAction.register();

     System.out.println("结果:"+user.getUsername()+"注册"+result);

}

   }

当用户和密码不为空时,则用户注册成功:

实验七——Web应用测试(bookstore项目上完成)

实验七——Web应用测试(bookstore项目上完成)

package org.easybooks.bookstore.action;

import org.easybooks.bookstore.service.IUserService;

import org.easybooks.bookstore.vo.User;

import org.junit.Test;

import org.springframework.beans.factory.BeanFactory;

import org.springframework.context.support.ClassPathXmlApplicationContext;

/*

 * 用户注册(失败)

*  当密码或用户名为空时,则注册失败

*  Actor:王燕红

 * */

public class UserActionTest {

@Test

public void testRegisterSuccess() throws Exception {

BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext.xml");

       

        User user=new User();

        user.setUsername("WYH");

        user.setPassword("");

        user.setSex("女");

        user.setAge(23);

       

        UserAction userAction=new UserAction();

        userAction.setUser(user);

        userAction.setUserService((IUserService)factory.getBean( "userService" ));

        String result=userAction.register();

        System.out.println("结果:"+user.getUsername()+"注册"+result);

}

   }

实验七——Web应用测试(bookstore项目上完成)

实验七——Web应用测试(bookstore项目上完成)

2、  编写单元测试用例,对用户注册功能的DAO层进行测试。(注意:测试用例应考虑成功和失败的情况)

在TestUserDAO()中加入测试用例代码:

@Test

     public void testUserReg(){

         User user= new User();

         user.setUsername("王燕红");

         user.setSex("女");

         user.setPassword("123456");

         user.setAge(22);

         try {

             if(userDAO.exitUser(user.getUsername())){

                 System.out.println("注册失败,"+user.getUsername()+"用户名已经存在,请重新注册!!");

             }else{

                 userDAO.saveUser(user);

                 System.out.println("注册用户:"+user.getUsername()+"成功");

             }

        

         } catch (Exception e) {

             System.out.println("注册失败");

         }  

        

        }

实验七——Web应用测试(bookstore项目上完成)

若在重新运行一次则出现注册失败,提示重新注册!

实验七——Web应用测试(bookstore项目上完成)