首先介绍下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端常见安全漏洞测试结果分析-- appscan

    基于appscan测试结果分析: 一.XSS跨站脚本 指的是攻击者往Web页面里插入恶意html代码,通常是JavaScript编写的恶意代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被 ...

  2. ifconfig命令--查看、配置、启用或禁用网络接口的工具

    ifconfig 是一个用来查看.配置.启用或禁用网络接口的工具,这个工具极为常用的.可以用这个工具来临时性的配置网卡的IP地址.掩码.广播地址.网关等.也可以把它写入一个文件中(比如/etc/rc. ...

  3. 移动端表层div滑动,导致底层body滑动(touchmove的阻止)

    body很长,可以滑动,body头部有一个模拟下拉的选择框,下拉选择有滚动轴 我给body一个overflow:hidden和高度是没有用的.手机网站上背景还是可以滑动,然后我给body一个touch ...

  4. 利用URL protocol在网页打开本地exe

    Registering the Application Handling the Custom URI Scheme To register an application to handle a pa ...

  5. asp.net 开发 sql server 转 oracle

    前段时间我们公司项目 要把sql server 转oracle 分享一下心得 也记录一下问题 开始我研究了一段时间 然后下载了 oracle 11g 版本 和 PL/SQL(客户端) 和sql ser ...

  6. 关于error C2872: 'LONG_PTR' : ambiguous symbol

    今天用VS2010创建了一个add-in工程,使用常量INVALID_HANDLE_VALUE时,编译器就提示如下错误: error C2872: 'LONG_PTR' : ambiguous sym ...

  7. mysql日期函数 当前日期 curdate() , 当前年 year(curdate()), 取date的年份 year(date) ,取date的月份 month(date)

    获取系统当前日期时间: sysdate() 获取系统当前日期:curdate() 获取系统当前时间:curtime() 获取给定日期的年份: year(date) 获取给定日期的月份:month(da ...

  8. Struts2学习笔记(十)——自定义拦截器

    Struts2拦截器是基于AOP思想实现的,而AOP的实现是基于动态代理.Struts2拦截器会在访问某个Action之前或者之后进行拦截,并且Struts2拦截器是可插拔的:Struts2拦截器栈就 ...

  9. Win7桌面底部的任务栏高度的修改

    Win7桌面底部的任务栏高度的修改.. ----------win7中,任务栏比较宽,有些用户的电脑分辨率比较低,就显得非常占地方,这时可将任务设置成窄模式,图标小图标.鼠标移动到状态上,点击右键.- ...

  10. MarkDown---超强文本编辑器

    What you see Is What you  get ... --------------------------- Salmon 编辑器界面: ------------------------ ...