欢迎来到天天文库
浏览记录
ID:37552063
大小:20.79 KB
页数:9页
时间:2019-05-25
《测试驱动开发WithJUnit(二)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第二章:JUnit测试套件: 在第一节中简单的介绍了JUnit的使用,但是每次运行测试类时,该测试类的所有方法全部都被测试一遍,如果想单独测试某个方法还是比较麻烦的。但是可以利用测试套件来解决这个问题。 下面我们先更改CalculateUtilTest向里面增加一个构造方法 1.import junit.framework.TestCase; 2.public class CalculateUtilTest extends TestCase 3.{ 4. 5. public CalculateUtilTest(String name)
2、//1行 6. { 7. super(name); 8. } 9. 10. ……其余方法省略 11.} 代码解释: 1行:自定义构造方法,里面有一个String参数,在该方法中调用父类的构造方 法。 构造一个类来操作测试套件:1.import junit.framework.*; 2.public class MainTest 3.{ 4. public static Test suite() //1行 5. { 6. TestSuit
3、e suite = new TestSuite(); //2行 7. 8. //添加测试testDivision方法 9. suite.addTest(new CalculateUtilTest("testDivision")); //3行 10. 11. //添加测试testCreate方法 12. suite.addTest(new CalculateUtilTest("testCreate")); 13. return suite; 1. } 2. 3. p
4、ublic static void main(String[] args) 4. { 5. //执行测试 6. junit.textui.TestRunner.run(suite()); //4行 7. } 8.} 代码解释: 1行:静态方法,返回Test类对象。该方法主要是构造TestSuite类对象,然后向 其中加入你想要测试的方法。 2行:构造TestSuite类对象 3行:向TestSuite对象中添加一个要测试的方法。
5、 newCalculateUtilTest("testDivision")表示测试CalculateUtilTest类的 testDivision方法。 4行:运行该测试套件 上面的方法可以非常方便地添加自己所需要的方法,如果是用该方法,就要在编写测试方法时将其加入测试套件中。如果你觉得很麻烦,那么就使用下列一行代码一次测试一个类吧。1.public static void main(String[] args) 2.{ 3. junit.swingui.TestRunner.run(CalculateUtilTe
6、st.class); 4.} 或者在suite方法中添加所要测试的类也可以1.public static Test suite() 2.{ 3. TestSuite suite = new TestSuite(); 4. suite.addTestSuite(CalculateUtil.class); 5. return suite; 6.} 尽管上面的测试套件提供了你所需要的各种粒度测试方法(按照方法名,测试整个类),但是有个问题是,当我们面临一大堆测试代码时,很容易忘记将你的测试类加入到一个测试套件中去。一个好的解
7、决方法是让java程序扫描你的classpath中的全部类,搜集所需要的测试类然后逐一执行。这样做的好处就是不会有测试被遗漏,但缺点是某些测试,你并不希望每次都运行它们。具体做法如下:先编写收集测试类的功能,并将全部测试类装入测试套件。代码如下1.import java.lang.reflect.Modifier; 2.import java.util.*; 3.import junit.runner.*; 4.import junit.framework.*; 5.public c
此文档下载收益归作者所有