首页 | 源码下载 | 网站模板 | 网页特效 | 广告代码 | 网页素材 | 字体下载 | 书库 | 站长工具
会员投稿 投稿指南 RSS订阅
当前位置:主页>网络编程>java教程>资讯:junit单元测试使用方法

junit单元测试使用方法

www.jz123.cn  2009-08-05   来源:   中国建站    责任编辑(袁袁)    我要投递新闻

  junit 是用来做单元测试,最近项目中可能要需要,所以了解了以下!说一下junit的使用!

  一、安装junit

  下载junit.jar放在你工程的编译路径下, ok!这不用解释

  二、使用junit

  使用的几种情况:具体使用间三中的代码注释部分

  1、测试某个类的所有方法

  2、测试某个类的个别方法

  3、测试几个类中的全部方法

  4、测试几个类中的指定方法

  三、 几个已经生成的类、eclipse3.2+myeclipse4.1+j2sdk1.4.2

  以下是被测试的类

  package common;

  import java.io.*;

  public class RunTime

  {

  public boolean executeRunTime(int str)

  {

  /*

  * try { Process prop = Runtime.getRuntime().exec(str); // Process prop =

  * Runtime.getRuntime().exec("cmd/E:ON/C start 1.txt"); } catch

  * (IOException e) { e.printStackTrace(); }

  */

  if (str == 1)

  {

  return true;

  } else

  {

  return false;

  }

  }

  public int reValue(int a ,int b)

  {

  return a+b;

  }

  }

  以下是junit的测试类

  package common;

  import junit.framework.AssertionFailedError;

  import junit.framework.Test;

  import junit.framework.TestCase;

  import junit.framework.Assert;

  import junit.framework.TestSuite;

  public class RunTimeTest extends TestCase

  {

  public static RunTime op = null;

  public RunTimeTest(String name)

  {

  super(name);

  }

  protected void setUp() throws Exception

  {

  super.setUp();

  op = new RunTime();

  }

  protected void tearDown() throws Exception

  {

  super.tearDown();

  }

  /*

  * Test method for 'common.RunTimeTest.executeRunTime()'

  */

  public void testExecuteRunTime()

  {

  // junit.framework.TestResult r = new junit.framework.TestResult();

  try

  {

  Assert.assertEquals(true, op.executeRunTime(1));// 若失败则抛出AssertionFailedError异常

  // throw new Exception( "This is a test.");

  // Assert.fail();

  } catch (Exception e)

  {

  System.out.println("sfsd");

  Assert.fail("fsdf");

  }

  }

  public void testreValue()

  {

  Assert.assertEquals(" i am here!",2,op.reValue(1,2));

  }

  // 可在一个单独类中实现

  public static Test suite()

  {

  TestSuite suite = new TestSuite("ALL TEST");

  /*以下是测试某个具体方法*/

  //suite.addTest(new RunTimeTest("testreValue"));

  suite.addTest(new RunTimeTest("testExecuteRunTime"));

  /*下句是执行指定类中的所有方法*/

  //suite.addTestSuite(RunTimeTest.class);

  return suite;

  }

  public static void main(String[] args)

  {

  // 以下三种方式均可以,具体情况可运行以下,看一下结果

  junit.textui.TestRunner.run(suite());

  // junit.swingui.TestRunner.run(Test.class);

  // junit.awtui.TestRunner.run(Test.class);

  //junit.swingui.TestRunner.run(RunTimeTest.class);

  }

  }

  以下是使用suite的类,可以测试多个

  package common;

  import junit.framework.TestCase;

  import junit.framework.TestSuite;

  import junit.framework.Test;

  import common.RunTimeTest;

  public class TestUnit

  {

  public static Test suite()

  {

  //以下是用来增加单个测试用例

  TestSuite suite = new TestSuite("ALL TEST");

  //以下这句将运行RunTimeTest中被指定的方法,如testreValue

  suite.addTest(new RunTimeTest("testreValue"));

  //以下这句将运行RunTimeTest中的所有测试方法

  //suite.addTestSuite(RunTimeTest.class);

  //以下这句讲运行RunTimeTest.suite()中规定的一组方法

  //suite.addTest(RunTimeTest.suite());

  return suite;

  }

  public static void main(String[] args)

  {

  //以下三种方式均可以,具体情况可运行以下,看一下结果

  // junit.textui.TestRunner.run(TestUnit.class);

  // junit.swingui.TestRunner.run(Test.class);

  // junit.awtui.TestRunner.run(Test.class);

  // junit.swingui.TestRunner.run(TestUnit.class);

  junit.textui.TestRunner.run(suite());

  }

  }


上一篇:java教程:网站开发中的入侵问题检测 下一篇:使用Java和oracle实现BLOB字段的字符串读取

评论总数:0 [ 查看全部 ] 网友评论


关于我们隐私版权广告服务友情链接联系我们网站地图