JUnit软件测试技术(工具)
在项目中建立专门用户测试的包结构。
在Junit中,通过@Test注解,可以运行一个方法。
★ Junit注解说明
使用了@Test注解应该满足以下条件:
1) 必须是无参数的非静态方法。
2) 添加@Test注解的类,必须拥有一个无参数的公开构造
★ JUnit测试示例演示
1、运行完成后,可以在Junit的窗口上看到运行所用的时间和结果信息。
2、被测试程序的运行结果出现在控制台(Console)上。
“项目”代码:
package cn.hncu.user.dao.dao; /** * @author 陈浩翔 * @version 1.0 2016-5-4 */ public interface UserDao { public abstract void fun1()throws Exception; public abstract void fun2(); public abstract void fun3(); }
package cn.hncu.user.dao.impl; import cn.hncu.user.dao.dao.UserDao; /** * @author 陈浩翔 * @version 1.0 2016-5-4 */ public class UserDaoImpl implements UserDao{ @Override public void fun1() throws Exception { System.out.println("fun1...."); } @Override public void fun2() { System.out.println("fun2...."); } @Override public void fun3() { System.out.println("fun3...."); } } package cn.hncu.user.dao.factory; import cn.hncu.user.dao.dao.UserDao; import cn.hncu.user.dao.impl.UserDaoImpl; /** * @author 陈浩翔 * @version 1.0 2016-5-4 */ public class UserDaoFactory { public static UserDao getUserDao(){ return new UserDaoImpl(); } }
随便写了几个输出。。。
下面的是测试代码:
package cn.hncu.test; import org.junit.Test; import cn.hncu.user.dao.dao.UserDao; import cn.hncu.user.dao.factory.UserDaoFactory; import cn.hncu.user.dao.impl.UserDaoImpl; /** * @author 陈浩翔 * @version 1.0 2016-5-4 */ //使用@Test的条件2:该类必须具有一个无参构造方法 public class TestUserDaoImpl { UserDao dao = UserDaoFactory.getUserDao(); /** * 测试fun1()方法 */ //使用@Test的条件1:测试方法必须是非静态、无参 @Test public void testFun1(){ try { dao.fun1(); } catch (Exception e) { e.printStackTrace(); } } @Test public void testFun2() { dao.fun2(); } @Test public void testFun3() { dao.fun3(); } }
正确的演示结果:
错误的演示结果:(没有无参构造方法)