首先将JUnit插件安装到Eclipse或myeclipse里面,编写完一个模块或者实体类的时候,直接右击,new一个JUnit项目,选择你想测试的实体类(模块),然后会自动生成一个类,这个类,我们将其叫做驱动类,是为了在其中加载测试数据用的(这个类里不再写main方法)。具体操作请参见陈磊兴先生的博客,写的很详细。http://blog.csdn.net/chenleixing/article/details/44259453

  下面,我也介绍一个简单的JUnit测试例子,来练练手。

  题目:

  1)    编写判断三角形类型的类Triangle及方法,编写InvalidTriangleException异常类,为Triangle类编写测试类、简单测试方法、异常测试方法

  需求:实现一个判断三角形类型的方法.

  1. 输入:三角形的三条边(要求:三个整型数)。
  2. 输出:三角形的类型(要求:识别等边三角形、等腰三角形、直角三角形和普通三角形)。
  3. 异常:输入三条边不能构成三角形时,抛出NotTriangleException,该异常类代码如下:

  public class TriangleException extends Exception {

    public TriangleException()  {}

      public TriangleException(String message) {

        super(message);

    }

  }

  作答代码:已省略导包,异常测试。

public class Triangle {

private double a;

private double b;

private double c;

private String type;

public Triangle(double a, double b, double c) {

super();

this.a = a;

this.b = b;

this.c = c;

}

public boolean IsTriangle(){//判断三角形

if(a+b<=c || a+c<=b || b+c<=a){

return false;

}

else{

return true;

}

}

public String cal_type(){

if(IsTriangle()){

if(a==b && a==c){

type = "等边三角形";

}

else

if(a==b || b==c || a==c){

type = "等腰三角形";

}

else{

type = "普通三角形";

}

//如果能构成直角三角形 覆盖type

if(a*a+b*b==c*c){

type = "直角三角形";

}

return type;

}

else

return "这不是三角形";//可在此抛出异常

}

}

JUnit测试类

public class TriangleTest {

@Test

public void test1() {

Triangle test1 = new Triangle(3,3,3);

String rs = test1.cal_type();

System.out.println(rs);

assertTrue(rs == "等边三角形");

}

@Test

public void test2() {

Triangle test2 = new Triangle(3,7,9);

String rs = test2.cal_type();

System.out.println(rs);

assertTrue(rs == "普通三角形");

}

@Test

public void test3() {

Triangle test3 = new Triangle(1,2,3);

String rs = test3.cal_type();

System.out.println(rs);

assertTrue(rs == "这不是三角形");

}

@Test

public void test4() {

Triangle test4 = new Triangle(3,4,5);

String rs = test4.cal_type();

System.out.println(rs);

assertTrue(rs == "直角三角形");

}

@Test

public void test5() {

Triangle test5 = new Triangle(3,4,3);

String rs = test5.cal_type();

System.out.println(rs);

assertTrue(rs == "等腰三角形");

}

}

运行:

左边是绿色的,表示该测试用例验证成功。

当然,按照以上这种做法,每添加一个测试用例,就得写一个test方法。事实上,我们可以重写JUnit测试驱动类的构造方法(可自动生成),使其为有参构造,我们以集合的方式往驱动类里面传送数组参数,达到减少代码量的目的。

最新文章

  1. Xamarin+Prism开发详解三:Visual studio 2017 RC初体验
  2. div内填内容
  3. js控制滚动条平滑滚动到制定位置
  4. maven eclipse 安装
  5. mybatis/callablestatement调用存储过程mysql connector产生不必要的元数据查询
  6. Centos下使用Heartbeat实现集群[转]
  7. overloading
  8. php-resque 任务队列
  9. HDOJ 2058 The sum problem
  10. LVM基本应用,扩展及缩减实现!
  11. C#动态调用泛型类、泛型方法
  12. Mysql基本代码操作
  13. [笔记]一些STL用法
  14. bash 的相关配置
  15. 实验验证sys和system用户全库导出的区别
  16. 【Disruptor】之Ringbuffer
  17. 18:Tomorrow never knows?
  18. TcxGrid 标题头高度
  19. vue-cli 安装步骤(转载)
  20. Wex5短信验证

热门文章

  1. 基于Vue2.0的单页面开发方案
  2. Android AndroidRuntime类
  3. Java集合类--温习笔记
  4. MySQL Workbench建表时 PK NN UQ BIN UN ZF AI 的含义
  5. excel常用技巧
  6. Spring Security OAuth2 开发指南
  7. [异常特工]android常见bug跟踪
  8. iOS---基于对Sqlilte3的二次包装的第三次包装---&gt;JKDBModel ,一个好用的离线缓存库
  9. Nginx 服务器 之Nginx与tomcat实现负载均衡
  10. redis的面试题