Junit测试用例不是用来证明你是对的,而是用来证明你没有错





1.功能

  -在项目未在浏览器运行之前对获得的结果和预期的结果进行比较调试,减少BUG和发布时的修复工作

2.测试类和代码类应分开存放.在src目录下new一个Test资源目录

3.JUnit Test Case

  可以对类中的方法生成测试方法

4.//方法中第一个参数为预测获得的结果,第二个为实际运行结果

    将预测结果和运行实际值进行比较

    assertEquals(6, new Arithmetic().multiplication(2, 3));

5.Failure -- 一般有单元测试使用的断言方法判断失败所引起的,这表示测试点发现了问题,就是说程序输出结果和我们预期的不一致

  error -- 一般由代码异常引起,它可以产生于测试代码本身的错误,也可以是被测试代码中的一个隐藏的BUG

6.运行流程

  -BeforeClass -- 所有加载开始前运行一次.适用于加载配置文件等只需运行一次的代码块

  -AfterClass  -- 所有代码运行完成后加载一次.适用于关闭资源

  --整个流程中只会存在一个beforeClass和AfterClass实例

  

  -before/after -- 每次加载Test时都会运行,适用于想随程序运行执行的静态代码块

7.注解详解

  -@Test

    --@Test(expected=anyException.class)

      ---预测程序会抛出何种异常,若抛出则忽略

    --@Test(timeout=any mm)

      --- 此修饰将在any毫秒后结束测试

  -@Ignore

    --此修饰符下的方法会被测试运行器忽略

  -@RunWith

    --可以更改(定制)自己的运行器 org.junit.runner.Runner

8.import static org.junit.Assert.*;断言

9.测试套件

  将测试运行器更改为Suite.class

  用SuiteClasses将测试类包裹其中

  @RunWith(Suite.class)

  @SuiteClasses({Task1Test.class,Task2Test.class,Task3Test.class})

10.参数化设置

  -更改默认测试运行器为RunWith(Parameterized.class)

  -声明变量来存放预期值和结果值

  -声明一个返回值为Collection的公共静态方法,并使用@Parameters进行修饰

-为测试类声明一个带有参数的公共构造函数,并在其中为之声明变量赋值

http://blog.csdn.net/jacxuan/article/details/53454819

使用Junit4对web项目进行测试(一)Junit初配置的更多相关文章

  1. Java Web项目中连接Access数据库的配置方法

    本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...

  2. IDEA中WEB项目本地调试和发布的配置分开配置

    一个Web项目,开发的时候设置了一些本地内容,比如IP地址,还有本地目录等.开发完成后,要发布到服务器上时,这些本地相关的配置,就需要配置成服务器上IP或目录. 原先的做法就是部署打包的时候,把相关的 ...

  3. Web项目后台测试流程

    1. 本地下载项目源码 1. Git clone项目代码到本地(本地项目代码1)并fetch: 2. Switch到master分支: 3. Create测试分支(例如:test1)并勾选“Switc ...

  4. IntelliJ IDEA WEB项目的部署配置

    以下内容是我网上找的比较全面了,其中关于facets配置很多地方都没有说明,其实很重要,我加入了自己的理解.其他来自网络.在导入一个项目有问题时,建议先创建一个正确的web项目,然后对比配置项,一般就 ...

  5. Maven3路程(三)用Maven创建第一个web项目(2)servlet演示

    上一章用Maven新建了web项目成功后,本文演示在此基础上应用servlet. 1.首先修改pom.xml文件,添加servlet依赖 <project xmlns="http:// ...

  6. IDEA下使用maven构建web项目(SpringMVC+Mybatis整合)

    需求背景:由于最近总是接到一些需求,需要配合前端团队快速建设移动端UI应用或web应用及后台业务逻辑支撑的需求,若每次都复用之前复杂业务应用的项目代码,总会携带很多暂时不会用到的功能或组件,这样的初始 ...

  7. java web:在eclipse中如何创建java web 项目

    Eclipse创建java web工程 eclipse版本:eclipse-jee-4.5-win32-x64 tomcat版本:apache-tomcat-7.0.63-windows-x64 jd ...

  8. eclipse: eclipse创建java web项目

    Eclipse创建java web工程 eclipse版本:eclipse-jee-4.5-win32-x64 tomcat版本:apache-tomcat-7.0.63-windows-x64 jd ...

  9. nginx + flask + uwsgi + centos + python3 搭建web项目

    1. python3之前已经搭建好,安装flask,使用 pip3 intall flask,这个比较简单,就不过多介绍 2.我在 /usr/local/nginx/html3  (html3是我新建 ...

随机推荐

  1. code forces Codeforces Round #487 (Div. 2) C

    C. A Mist of Florescence time limit per test 1 second memory limit per test 256 megabytes input stan ...

  2. Educational Codeforces Round 42 (Rated for Div. 2) B

    B. Students in Railway Carriage time limit per test 2 seconds memory limit per test 256 megabytes in ...

  3. HDU 1711 Number Sequence---KMP原始

    #include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h> #in ...

  4. python常用20库

    python核心库和统计 简述 1. Requests.最着名的http库由kenneth reitz编写.这是每个python开发人员必备的. 2. Scrapy.如果您参与webscraping, ...

  5. wcf常用的概念

    常见的服务行为包括实例控制.并发控制.元数据发布等 在WCF中,有三种消息交换模式:数据报模式.请求-响应模式.双工模式. 在WCF中一共包含了4种契约,分别是服务契约.数据契约.错误契约和消息契约. ...

  6. (七)insmod/rmmod

    insmod: insmod命令用于将给定的模块加载到内核中.Linux有许多功能是通过模块的方式,在需要时才载入kernel.如此可使kernel较为精简,进而提高效率,以及保有较大的弹性.这类可载 ...

  7. Linux下使用system()函数一定要谨慎

    转载自:http://my.oschina.net/renhc/blog/53580   linux尽量避免使用system. 曾经的曾经,被system()函数折磨过,之所以这样,是因为对syste ...

  8. centos编译安装vim并支持lua

    系统环境:centos6.5 x86 (basic server) 1.安装编译环境. # yum groupinstall "Development Tools" 2.安装vim ...

  9. python描述符的应用

    使用描述符为python实现类型检测 class Typed: def __get__(self, instance, owner): print(instance) print(owner) def ...

  10. postgres 基本使用

    postgres=# help 您正在使用psql, 这是一种用于访问PostgreSQL的命令行界面 键入: \copyright 显示发行条款 \h 显示 SQL 命令的说明 \? 显示 pgsq ...