用这1个 *** 「的 *** 」

大家好,关于用这1个 *** 很多朋友都还不太明白,不知道是什么意思,那么今天我就来为大家分享一下关于的 *** 的相关知识,文章篇幅可能较长,还望大家耐心阅读,希望本篇文章对各位有所帮助!
1怎么用junit 只测试1个 *** JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework) 。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能 。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了 。
JUnit是一个开发源代码的Java测试框架,用于编写和运行可重复的测试 。他是用于单元测试框架体系xUnit的一个实例(用于java语言) 。它包括以下特性:
1、用于测试期望结果的断言(Assertion)
2、用于共享共同测试数据的测试工具
3、用于方便的组织和运行测试的测试套件
4、图形和文本的测试运行器
另外junit是在xp编程和重构(refactor)中被极力推荐使用的工具,因为在实现自动单元测试的情况下可以大大的提高开发的效率,但是实际上编写测试代码也是需要耗费很多的时间和精力的,那么使用这个东东好处到底在哪里呢?笔者认为是这样的:
1、对于xp编程而言,要求在编写代码之前先写测试,这样可以强制你在写代码之前好好的思考代码( *** )的功能和逻辑,否则编写的代码很不稳定,那么你需要同时维护测试代码和实际代码,这个工作量就会大大增加 。因此在xp编程中,基本过程是这样的:构思-》编写测试代码-》编写代码-》测试,而且编写测试和编写代码都是增量式的,写一点测一点,在编写以后的代码中如果发现问题可以较块的追踪到问题的原因,减小回归错误的纠错难度 。
2、对于重构而言,其好处和xp编程中是类似的,因为重构也是要求改一点测一点,减少回归错误造成的时间消耗 。
3、对于非以上两种情况,我们在开发的时候使用junit写一些适当的测试也是有必要的,因为一般我们也是需要编写测试的代码的,可能原来不是使用的junit,如果使用junit,而且针对接口( *** )编写测试代码会减少以后的维护工作,例如以后对 *** 内部的修改(这个就是相当于重构的工作了) 。另外就是因为junit有断言功能,如果测试结果不通过会告诉我们那个测试不通过,为什么,而如果是想以前的一般做法是写一些测试代码看其输出结果,然后再由自己来判断结果使用正确,使用junit的好处就是这个结果是否正确的判断是它来完成的,我们只需要看看它告诉我们结果是否正确就可以了,在一般情况下会大大提高效率 。
安装JUnit
安装很简单,先到以下地址下载一个最新的zip包:
下载完以后解压缩到你喜欢的目录下,假设是JUNIT_HOME,然后将JUNIT_HOME 下的junit.jar包加到你的系统的CLASSPATH环境变量中,对于IDE环境,对于需要用到的junit的项目增加到lib中,其设置不同的 IDE有不同的设置,这里不多讲 。
如何使用JUnit写测试?
最简单的范例如下:
1、创建一个TestCase的子类
package junitfaq;
import java.util.*;
import junit.framework.*;
public class SimpleTest extends TestCase {
public SimpleTest(String name) {
super(name);
}
2、写一个测试 *** 断言期望的结果
public void testEmptyCollection() {
Collection collection = new ArrayList();
assertTrue(collection.isEmpty());
}
注意:JUnit推荐的做法是以test作为待测试的 *** 的开头,这样这些 *** 可以被自动找到并被测试 。
3、写一个suite() *** ,它会使用反射动态的创建一个包含所有的testXxxx *** 的测试套件
public static Test suite() {
return new TestSuite(SimpleTest.class);
}
4、写一个main() *** 以文本运行器的方式方便的运行测试
public static void main(String args[]) {
junit.textui.TestRunner.run(suite());
}
}
5、运行测试
以文本方式运行:
java junitfaq.SimpleTest
通过的测试结果是:
.
Time: 0
OK (1 tests)
Time上的小点表示测试个数,如果测试通过则显示OK 。否则在小点的后边标上F,表示该测试失败 。
每次的测试结果都应该是OK的,这样才能说明测试是成功的,如果不成功就要马上根据提示信息进行修正了 。
如果JUnit报告了测试没有成功,它会区分失败(failures)和错误(errors) 。失败是你的代码中的assert *** 失败引起的;而错误则是代码异常引起的,例如ArrayIndexOutOfBoundsException 。

推荐阅读