JUnit4课程

JUnit4快速入门

测试实践

1.导入jar(右键Build Path --> Add Libraries --> Junit --> Junit4)
2.新建测试类:右键需测试类所在包new --> JUnit Test Case参照自动生成的测试类模板(可删除),写自己的测试方法 assertEquals(得到的正确值(即预测值), 程序得到的值);
3.运行测试:测试文件右键 --> Run as JUnit Test
4.Junit视图:状态条(绿色——测试成功;红色——测试失败)

1.测试方法上必须使用@Test进行修饰,assertEquals()
2.测试方法必须使用public void进行修饰,不能带任何的参数
3.新建一个源代码目录来存放我们的测试代码
4.测试类的包应该和被测试类保持一致
5.测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖

nit4使用详解

测试失败的两种情况 Failure , Error

  1. Failure一般由单元测试使用的断言方法判断失败所引起的,这表示 测试点发现了问题,就是说程序输出的结果和我们预期的不一样
  2. error是由代码异常引起的,他可以产生于测试代码本身的错误,也可以是被测试代码中的一个隐藏的bug

运行流程

1.BeforeClass修饰的方法会在所有方法被调用前被执行,而且是静态的,所以当测试类被加载后接着就会运行它,而且在内存中它只会存在一份实例,比较适合加载配置文件。
2.AfterClass所修饰的方法通常用来对资源的清理,如关闭数据库的连接
3.Before和@After会在每个测试方法的前后各执行一次

常用的修饰方法

@Test:将一个普通的方法修饰成为一个测试方法    
Test(expected=XX.class)    
@Test(timeout=毫秒)
@BeforeClass:他会在所有的方法运行前被执行,static修饰
@AfterClass:他会在所有的方法运行结束后被执行,static修饰
@Before:会在每一个测试方法被运行前执行一次

JUnit4的深入使用

JUnit4测试套件的使用

测试套件就是组织测试类一起运行的写一个作为测试套件的入口类,
这个类里面不包含其他的方法更改测试运行器Suite.class将要测试的类作为数组传入到Suite.SuiteClasses({})
@runwith(suite.class) 指定测试套类运行器运行
@suite.suiteclass(test1.class,test2.class)指定要运行的测试类

JUnit4参数化设置

更改默认的测试运行器为RunWith(Parameterized.class)
声明变量来存分预期值和结果值声明一个返回值为Collection的公共静态方法,并使用@Parameters进行修饰
为测试类声明一个带有参数的公共构造函数,并在其中为之声明变量赋值

## 课程总结

JUnit4的使用总结

@Test@Test(thimeout=毫秒),
@Test(expected=异常类)
@Ignore
@RunWith
@BeforeClass
@AfterClass
@Before @After

最后皮一下:

课程地址:JUnit4课程

关于测试:JUnit4课程的更多相关文章

  1. spring学习总结(mybatis,事务,测试JUnit4,日志log4j&slf4j,定时任务quartz&spring-task,jetty,Restful-jersey等)

    在实战中学习,模仿博客园的部分功能.包括用户的注册,登陆:发表新随笔,阅读随笔:发表评论,以及定时任务等.Entity层设计3张表,分别为user表(用户),essay表(随笔)以及comment表( ...

  2. 20155219 付颖卓《基于ARM试验箱的接口应用于测试》课程设计个人报告

    一.个人贡献 参与课设题目讨论及完成全过程: 资料收集: 负责代码调试: 修改小组结题报告: 负责试验箱的管理: 二.设计中遇到的问题及解决方法 1.makefile无法完成编译.如下图: 答:重新下 ...

  3. Junit3与Junit4的区别

    Junit4最大的亮点就是引入了注解(annotation),通过解析注解就可以为测试提供相应的信息,抛弃junit3使用命名约束以及反射机制的方法. /** * 被测试类 */ package co ...

  4. Junit4学习笔记

    一.初始化标注 在老Junit4提供了setUp()和tearDown(),在每个测试函数调用之前/后都会调用. @Before: Method annotated with @Before exec ...

  5. 201521123053《Java课程设计》第十四周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 知识点: 创建表的命令有若干行,如果中间某行输入错误,不能修改:可以使用记事本现将命令输入,然后复制粘贴到mys ...

  6. junit3对比junit4

    本文内容摘自junit实战,感谢作者的无私奉献. 个人觉得每个开源包的版本对比意义不大,闲来无事,这里就来整理一下好了.本文名为junit3对比junit4,但是我通过这篇博客主要也是想统一的来整理下 ...

  7. 【技术开放日】msup携手HPE揭秘全球测试中心背后的12条技术实践

    保证软件产品质量是软件测试永恒的目标. 以控制为出发点的传统IT时代正在快速的向以激活生产力为目的的移动互联时代转变.这不仅是技术的升级,更是思想意识的巨大变革,也对软件技术的发展带来的更高的要求和更 ...

  8. 20165330 2017-2018-2《Java程序设计》课程总结

    20165330 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:我期望的师生关系 预备作业2:做中学learning by doing个人感想及学习基础 ...

  9. 测试文档(final)

    1 引言 1.1编写目的 编写本测试计划的目的是: (1)     为整个测试阶段的管理工作和技术工作提供指南同时确定测试的内容和范围,为评价系统提供依据: (2)     此外还帮助安排测试活动,说 ...

随机推荐

  1. [Swift]LeetCode287. 寻找重复数 | Find the Duplicate Number

    Given an array nums containing n + 1 integers where each integer is between 1 and n (inclusive), pro ...

  2. JDBC也就那么回事

    JDBC 一.JDBC概述 为什么要使用JDBC? JDBC:Java DataBase Connectivity,是SUN公司提供的一套操作数据库的标准规范(技术). JDBC与数据库驱动的关系:接 ...

  3. 在admui中怎样上传本地文件?

    1.首先需要引入一些插件 css: <link rel="stylesheet" href="/vendor/blueimp-file-upload/jquery. ...

  4. PyPI可以使用的几个国内源

    参考 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣(dou ...

  5. Python内置函数(35)——issubclass

     英文文档: issubclass(class, classinfo) Return true if class is a subclass (direct, indirect or virtual) ...

  6. 【java设计模式】(4)---工厂模式(案例解析)

    设计模式之工厂模式 工厂模式分三种:简单工厂模式(也叫静态工厂模式),工厂方法模式(也叫多形性工厂),抽象工厂模式(也叫工具箱)下面会一一举例. 一.概念 1.什么是工厂模式 这种类型的设计模式属于创 ...

  7. Kafka并不难学

    1.为什么写这本书? 我建立了一个qq群,有很多人在群里面学习和交流,经常有人问我一些Kafka的知识,我可以感受他们对技术的热情,这是一群刚走出校门,或者工作经验较少,又或是一些转型的开发新人,他们 ...

  8. adb server is out of date. killing... ADB server didn't ACK解决方法

    在使用ADT Bundle进Android开发时,有时经常会碰到如下错误提示: adb server is out of date. killing... ADB server didn't ACK ...

  9. Ruby数组(1):基本用法

    数组 Ruby中的数组是一个容器,数组中的每个元素都是一个对象的引用. 注意,Array类中包含了Enumerable模块,所以Enumerable中的方法也都能使用,例如Enumerable中的re ...

  10. 超级账本fabric原理之gossip详解

    Goosip协议 去中心化.容错和最终一致性的算法 信息达到同步的最优时间:log(N). 功能: 节点发现 数据广播 gossip中有三种基本的操作: push - A节点将数据(key,value ...