一个基于JUnit的测试框架

发表于:2009-5-08 15:07

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:阿飞    来源:CSDN博客

#
JUnit

  这个测试框架是我在做一个比较大的工程时写的一个框架,专门对工程进行单元测试和集成测试的,这个框架的功能和结构都很简单,在这里分享给大家,也希望大家能多提点宝贵的意见和建议,谢谢!

  一、工程的结构如下:

  -test

  --org.system.test.demo

  ----DemoTest.java

  ----FuncATest.java

  ----FuncBTest.java

  --org.system.test.util

  ----Login.java

  ----LoginInfo.java

  其中:

  org.system.test.demo为单元测试和集成测试的java类的包,org.system.test.util各工具类的包(这里用用户登陆的验证作为演示)。

  DemoTest.java ——为集成测试类

  FuncATest.java ——为FuncA单元测试类

  FuncBTest.java ——为FuncB单元测试类

  Login.java ——登陆验证类

  LoginInfo.java ——用户信息的Javabean类

  二、详细代码

  FuncATest.java文件:

  1. /**
  2.  * 
  3.  */
  4. package org.system.test.demo;
  5. import junit.framework.Test;
  6. import junit.framework.TestCase;
  7. import junit.framework.TestSuite;
  8. import org.apache.commons.logging.Log;
  9. import org.apache.commons.logging.LogFactory;
  10. import org.gos.system.hpcg.test.demo.util.LoginInfo;
  11. /**
  12.  * @author chenfei
  13.  *
  14.  */
  15. public class FunATest extends TestCase {
  16.     /**
  17.      * . LoginInfo
  18.      */
  19.     private static LoginInfo login;
  20.     /**
  21.      * the log object.
  22.      */
  23.     private static Log log = LogFactory.getLog(FunATest.class);
  24.     public static void main(String args[]) {
  25.                 //在命令行中也可以对FunA进行集成测试
  26.         junit.textui.TestRunner.run(FunATest.suite());
  27.     }
  28.     /**
  29.      * Construct function.
  30.      */
  31.     public FunATest(String name) {
  32.         super(name);
  33.     }
  34.     /**
  35.      * to determine which functions should be test. Don't change the order of
  36.      * test functions.
  37.      * 
  38.      * @return the Test object.
  39.      */
  40.     public static Test suite() {
  41.                 //这里是FunA的集成测试,必须将需要进行单元测试的方法加入到这里来!
  42.         TestSuite suite = new TestSuite();
  43.         suite.addTest(new FunATest("testA1"));
  44.         suite.addTest(new FunATest("testA2"));
  45.         suite.addTest(new FunATest("testA3"));
  46.         suite.addTest(new FunATest("testA4"));
  47.         return suite;
  48.     }
  49.     public static void testA1(){
  50.                 //这里可以对testA1方法进行测试
  51.         System.out.println("In FunA.testA1()");
  52.     }
  53.     public static void testA2() {
  54.                 //这里可以对testA2方法进行测试
  55.         System.out.println("In FunA.testA2()");
  56.     }
  57.     public static void testA3() {
  58.                 //这里可以对testA3方法进行测试
  59.         System.out.println("In FunA.testA3()");
  60.     }
  61.     public static void testA4() {
  62.                 //这里可以对testA4方法进行测试
  63.         System.out.println("In FunA.testA4()");
  64.     }
  65. }

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号