关闭

使用Junit进行单元测试

发表于:2010-10-13 14:06

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

 作者:韩枫慧    来源:51testing 投稿

  这是第一个测试,首先要确定包被部署ok并且JUnit在类路径上。没有特别的。

  然后我们构建。

  我们运行我们的测试。

  有多种运行测试的方法:

  在命令行中,需要先用文字表示:java.junit.textui.TestRunner org.dneary.math.test.MathOpsTest For AWT:java junit.awtui. TestRunner org.denerry.math.test.MathOpsTest For Swing:java junit.swingui. TestRunner org.dneary.math.test.MathOpsTest

  更好的是(恕我直言):用eclipese 插件,或者写一个像这样的小的"主"函数:

public static void main(String[ ] args)
{
   junit.swingui.TestRunner.run(MathOpsTest.class);
}

  然后使用 java org.dneary.math.test.MathOpsTest简单运行测试。

  下面是使用文本模式在命令行执行。

  java -cp junit.jar;. junit.textui.TestRunner org.dneary.math.test.MathOpsTest.

  Time: 0,01

  OK (1 tests)

  哇哦!运行通过。

  3.2 全速前进

  很好--但是不测试任何东西的测试是不太好的。最好是有一些测试。我们将写一个方法,用来返回一组整数集合的平均值。

import java.util.*;
...
public static double average (List numbers)
{
   return 0;
}

  然后,在MathOpsTest中,我们加入这个方法。

import java.util.*;
...
public void test_average_simple ()
{

   Vector nums = new Vector();
   nums.add(new Integer(3));
   assertTrue(MathOps.average(nums) == 3.0);
}

  这是一个非常简单的测试,检查我们没有做出任何非常愚蠢的错误。它应该不会对我们的类构成任何问题。但是……

  java -cp junit.jar;. junit.textui.TestRunner org.dneary.math.test.MathOpsTest

  ..F

  Time: 0,01 There was 1 failure:

  1)

  test_average_simple(org.dneary.math.test.MathOpsTest)junit.framework.AssertionFailedError

  At

  org.dneary.math.test.MathOpsTest.test_average_simple(MathOpsTest.java:18)

  FAILURES!!!

  Tests run: 2, Failures: 1, Errors: 0

  This is normal. 0 != 3.0.

52/5<12345>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号