junit浅学笔记三
来源:互联网 发布:网络通畅 但打不开网页 编辑:程序博客网 时间:2024/06/05 17:24
这一节我们将学习进行批量处理,假如我们有多的测试,怎样进行批量处理,请跟着我做。
---------------------------------------------
假如我们写了两个被测程序。如下:
T.java
package com.junit4.cc;publicclass T { publicint add(int x ,int y){ return x+y; } publicstaticvoid main(String args[]){ int z=new T().add(3,5); System.out.println(z); }}
User.java
package com.junit4.cc;publicclass User { public String geName(){ return"刘若英"; //PS:她是我的偶像嘻嘻:) }}
------------------------------------测试类-------------------------
下面要对上面的两个类写测试类。(关于测试类的创建的方法,不懂的可以看我的第一篇《junit浅学笔记一》)
TTest.java 对应的是T.java的测试类。
package com.junit4.cc.test;importstatic org.junit.Assert.*;import org.junit.Test;import com.junit4.cc.*;publicclass TTest { @Test publicvoid testAdd() { int z=new T().add(5,3); assertEquals(8,z); }}
UserTest.java 对应的是User.java
package com.junit4.cc.test;importstatic org.junit.Assert.*;import org.junit.Test;import com.junit4.cc.User;publicclass UserTest { @Test publicvoid testGeName() { assertEquals(new User().geName(),("刘若英")); }}
完成之后的列表如下:
要批量运行上面两个测试类,有两个方法。
方法一
右键点击测试包“com.junit4.cc.test”--->Run As--->Run Configurations.
这种方式设置简单,但灵活度不高,假如有100个测试类。我只想运行其中的某几个测试类。下面看第二中方式。
方法二
方法引入一种“测试套件”的概念,JUnit提供了一种批量运行测试类的方法,叫测试套件。
测试套件的写法需要遵循以下原则:
1. 创建一个空类作为测试套件的入口;
2. 使用注解 org.junit.runner.RunWith 和 org.junit.runners.Suite.SuitClasses 修饰这个空类
3. 将org.junit.runners.Suite作为参数传入给注解RunWith,以提示Junit为此类测试使用套件运行器执行。
4. 将需要放入此测试套件的测试类组成数组作为注解SuiteClasses的参数
5. 保证这个空类使用public修饰,而且存在公开的不带任何参数的构造函数
下面在测试包(com.junit4.cc.test)下面创建一个测试类,内容如下:
AllTest.java
package com.junit4.cc.test;import org.junit.runner.RunWith;import org.junit.runners.Suite;import org.junit.runners.Suite.SuiteClasses;@RunWith(Suite.class)@SuiteClasses({ TTest.class, UserTest.class //这里自由加入需要运行的测试类 })publicclass AllTest {}
创建之后的列表:
运行AllTest.java的结果(这里,两个方法的运行结果是一样的):
ps:关于两种方式的比较,第一种方法简单,只用选择测试包,就可以批量运行里面的所有测试程序。第二种方式还有重新创建一个测试类,但它非常灵活,只用在这个类中加入需要运行的类就可以灵活的运行需要测试的类。
- junit浅学笔记三
- junit浅学笔记三
- junit浅学笔记三
- junit浅学笔记一
- junit浅学笔记二
- junit浅学笔记二
- junit浅学笔记一
- junit浅学笔记一
- junit浅学笔记二
- Junit学习笔记(三)
- 备课笔记--浅学MYSQL
- Junit单元测试学习笔记三
- JUnit学习笔记(三):重构
- junit(三)
- 安卓学习笔记----浅学Menu
- JUnit笔记
- Junit笔记
- Junit笔记
- opencv 2.x学习笔记(四)基本数据类型(二)
- Ubuntu本地uwsgi配Django问题的解决
- 生活编程(四) 学校图书馆简化
- Java中Annotation(注释)系列学习笔记(4)
- 程序员生存定律——成长路上常见的坑
- junit浅学笔记三
- best strategies for implementation of equals() and hashcode() in your persistent classes
- 关键字static的作用 (转)
- Andriod Studio科普篇——3.关于gradle插件的常见问题
- SSH远程会话管理工具 - screen使用教程
- Node.js howto: make asynchronous callback from thread
- JFreeChart实现实时曲线图(不错的例子)
- gnuplot用法
- keytool import 导入证书错误