首先介绍下TestCase以及TestSuite.
   TestCase:字面意思,测试用例。为一个或多个方法提供测试方法。一般是一个test
   TestSuite:测试集合,即一组测试。一个test suite是把多个相关测试归入一组的快捷方式。如果自己没有定义,Junit会自动提供一个test suite ,包括TestCase中的所有测试。
  TestRunner:测试运行器。执行test suite的程序。
  现在开始编写类及使用test suite及test case来测试写好的类。
  代码的目录如图:
  下面我按照顺序,说出我做测试的具体步骤。
  第一步,先引入junit包,网上有很多教程教你怎么下载并引入,这里就不再重复。
  第二步,新建pakeage包,注意将要进行测试的类及含测试用例的类(一般会叫做test)分成两个包。可见上面的截图。
  第三步,新建一个类,以供测试,为Calculator。其代码如下:
        

第四步,先设计一个测试用例来测试这个类,一般命名为test???,这里我命名为TestCalculator。其代码如下:

      
选中{TestCaluator},右键Run as ,选中junit test,就可见左侧junit显示情况。

可看到是红色,且testAdd上面有个小叉叉,说明结果不是我们期望的。可在TestCalculator中发现我在testAdd中的用例是50+10=70,很明显不成立,所以他出错才是对的。若将70改为60,就会说绿色的。

第五步:用test suite测试全部的测试用例,或者是我们想要测试的类,而不用一个一个执行,节省时间,为TestAll文件,代码如下:

你会发现里面显示有错,但是我又是按照范例去输入的,所以我苦恼了,去百度才找到答案。
Junit并没有规定你一定要使用test???()这样的方式去命名您的测试方法,如果你要提高自己的方法,为了要能够使用建构函式提供测试方法名称,你的TestCase必须提供如下的建构函式:
    public Calculator(String arg){
     super(arg);
     }
添加之后就能使用addTest了。
第六步:使用testRuner。可以一次性执行那些用例,只需添加几条代码,可与上图对比。
这样就可以测试你想测试的类了。

JUnit之TestCase和TestSuite详解的更多相关文章

  1. TestCase和TestSuite详解

    一.TestCast和TestSuite概念介绍 TestCase:字面意思,测试用例.为一个或多个方法提供测试方法,一般是一个test. TestSuite:测试集合,即一组测试.一个test su ...

  2. 详解intellij idea搭建SSM框架(spring+maven+mybatis+mysql+junit)(下)

    在上一篇(详解intellij idea 搭建SSM框架(spring+maven+mybatis+mysql+junit)(上))博文中已经介绍了关于SSM框架的各种基础配置,(对于SSM配置不熟悉 ...

  3. Junit使用详解

    http://junit.org/上详细介绍了Junit.JUnit is a simple framework to write repeatable tests. It is an instanc ...

  4. junit 常用注解 + junit 断言详解

    @Test: 在junit3中,是通过对测试类和测试方法的命名来确定是否是测试,且所有的测试类必须继承junit的测试基类.在junit4中,定义一个测试方法变得简单很多,只需要在方法前加上@Test ...

  5. TestNG详解-深度好文

    转自: https://blog.csdn.net/lykangjia/article/details/56485295 TestNG详解-深度好文 2017年02月22日 14:51:52 阅读数: ...

  6. Java基础学习总结(24)——Java单元测试之JUnit4详解

    Java单元测试之JUnit4详解 与JUnit3不同,JUnit4通过注解的方式来识别测试方法.目前支持的主要注解有: @BeforeClass 全局只会执行一次,而且是第一个运行 @Before  ...

  7. HTMLParser 使用详解

    htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或   提取html.它能超高速解析html,而且不会出错.现在htmlparser最新版本为2 ...

  8. 【python3+request】python3+requests接口自动化测试框架实例详解教程

    转自:https://my.oschina.net/u/3041656/blog/820023 [python3+request]python3+requests接口自动化测试框架实例详解教程 前段时 ...

  9. 【原创】Junit4详解二:Junit4 Runner以及test case执行顺序和源代码理解

    概要: 前一篇文章我们总体介绍了Junit4的用法以及一些简单的测试.之前我有个疑惑,Junit4怎么把一个test case跑起来的,在test case之前和之后我们能做些什么? Junit4执行 ...

随机推荐

  1. Web如何应对流量劫持?

    虽然互联网经过多年的发展,可是网站使用的底层协议仍是 HTTP,HTTP 作为一种明文传播协议,所有的传输数据都是明文,我们都知道在通信中使用明文(不加密) 内容可能会被窃听,同时网站存在被劫持的风险 ...

  2. akoj-1272-字母统计

    字母统计 Time Limit:1000MS  Memory Limit:65536K Total Submit:72 Accepted:48 Description 现在给你一个由小写字母组成字符串 ...

  3. CharMatch(括号匹配)

    用自己定义的链栈实现括号匹配 #include"LinkStack.h" bool Match(char *s) { LinkStack<char> tmpS; cha ...

  4. 已有 JFFs2文件系统的修改

    项目应用中,对于前人留下的JFFS2的文件,有时候我们需要修改,但是苦于没有源文件,实际操作很多时候无所适从.每次支持生产之后再进行人为的升级.这样费时费力,也给生产人员增加了负担. 为了解决这个问题 ...

  5. Maven干货2

    回顾: 1. maven核心 a) 依赖管理:对jar统一管理.根据坐标(groupId,artifactId,version)去找jar包,本地,私服,中央仓库 b) 项目构建:通过命令构建.cle ...

  6. MySQL Flush导致的等待问题

    --MySQL Flush导致的等待问题 -------------------------------2014/07/13 前言 在实际生产环境中有时会发现大量的sql语句处于waiting for ...

  7. JFreeChart与AJAX+JSON+ECharts两种处理方式生成热词统计可视化图表

    本篇的思想:对HDFS获取的数据进行两种不同的可视化图表处理方式.第一种JFreeChar可视化处理生成图片文件查看.第二种AJAX+JSON+ECharts实现可视化图表,并呈现于浏览器上.   对 ...

  8. 关于InnoDB存储引擎text和blob类型的优化

    我们在数据库优化的时候,看到一些表在设计上使用了text或者blob的字段,如果单表的存储空间达到了近上百G或者大几十G,这种情况再去改变和优化就非常难了 一.简介 为了清楚大字段对性能的影响,我们有 ...

  9. 【Linux】管理在线用户

    查看当前在线用户 [root@localhost ~]# who root pts/ -- : (111.34.103.23) 查看在线用户 [root@localhost ~]# w :: up d ...

  10. oracle撤销表空间和回滚段

    /* 撤销表空间 */ 通过使用撤销技术,能够为Oracle数据库提供以下功能: * 使用ROLLBACK语句撤销事务 * 进行数据库恢复 * 提供数据的读一致性 Oracle强烈建议DBA在Orac ...