JUnit(java单元测试工具) 2017.11.20.

Slides:



Advertisements
Similar presentations
迪士尼公主裙衫变化记. 《白雪公主和七个小孩人》 《白雪公主和七个小矮人》,是世界电影史上第一部长动 画片,也是迪士尼的第一部。《白雪公主》不仅为迪斯尼 带来了第一尊奥斯卡小人,更是拯救迪斯尼于水火的贵 人 —— 在经济大萧条的 1937 年的美国,《白雪公主》为迪 斯尼赚到了 850 万美元,这约等于现在的数亿美元!
Advertisements

好孕 : 好孕 : 懷孕前就要做 對的 3 件事! 女醫師助孕筆 記大公開! 準備好了嗎? 一起翻開筆記吧! 一起翻開筆記吧! 
软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
Java 大学实用教程 ( 第 3 版 ) 主讲:程继洪 第 1 章 Java 语言概述  本章导读 Java 语言的诞生Java 语言的诞生 学习 Java 的必要性 学习 Java 的必要性 Java 的特点及与 C/C++ 之关系Java 的特点及与 C/C++ 之关系.
Java 程序分类 Java Application :是完整程序,需要独立的解 释器解释运行;以 “.java” 为后缀的文件,以 main() 方法作为程序入口,由 java 编译器编译生 成字节码,由 Java 解释器加载执行字节码。 Java Applet 没有 main() 方法作为程序入口,是嵌在.
Mooctest.net- 慕测平台 南京大学陈振宇团队 刘子聪. 慕测平台 特点 真实编程环境( IDE ) 实时编程 / 测试评分 全程编程行为跟踪 自定义度量评估方式 平台免费、平台开放、接口开放.
Java语言的特点 Java开发环境的搭建
单元二:面向对象程序设计 任务二:借书卡程序设计.
第三讲 面向对象(上).
第 9 章 物件的建構.
6. 6 Overloading methods and constructors 6
商業用慳水系統 榮獲二零零五年香港環保產品獎優異獎 多德來(香港)有限公司 二零零五年.
问卷调查的规范与技术 问卷调查的规范与技术.
C语言程序设计 李伟光.
教學經驗分享 吳毅成 國立交通大學資訊工程系 2012年4月.
切实增强实验室安全意识 提高实验室安全管理水平
肾衰竭.
Java程序设计教程 第一讲 Java概述.
99年成語200題庫(21-40).
四資二甲 第三週作業 物件導向程式設計.
本周主要有 16 款网页游戏进行了公开测试, 11 款角色扮演类型,4 款战争策略类型,1 款休
Java Programming Hygiene - for DIDC
南京理工大学 第2章 Java基本语法 本章我们将学习Java编程语言的基本语法,包括变量、操作符、表达式、语句、字符串、数组、控制流以及如何使用帮助文档。 使用下面的编程框架: public class Test{ public static void main(String []args){ //以下添加测试代码.
公关关系运作程序 湖南司法警官职业学院.
TQC+ 物件導向程式認證-JAVA.
宋秀苗 大连理工大学城市学院图书馆 电子期刊的利用(论文检索) 宋秀苗 大连理工大学城市学院图书馆
转正述职报告 乐恩公司 史航
精英型软件人才 培养模式的探索与实践 卢 苇 北京交通大学国家示范性软件学院.
報告人:古博文 彰師大運動健康研究所副教授 人權教育基金會執行長 100年8月
Public Finance 财政学 (第十四章).
每周分享一本技术书.
珍惜时间 提高效率 初二1班
Android + JUnit 單元測試 建國科技大學資管系 饒瑞佶 2012/8/19V4.
開發環境設置.
淺談Visual C# 程式設計 國立台灣師大附中 李啟龍 Jason.
Java基础 JavaSE异常.
CHAPTER 9 建構方法 ROBERT.
程式設計實作.
實作輔導 3 日期: 4/14(星期六) 09:10~12:00、13:10~16:00
9.1 程式偵錯 9.2 捕捉例外 9.3 自行拋出例外 9.4 自定例外類別 9.5 多執行緒
异常及处理.
C/C++/Java 哪些值不是头等程序对象
資訊學科中心研習 JAVA程式設計專題 臺北市立大理高級中學 黃世隆 2019/2/23.
* 單元:電腦與問題解決 主題:Java物件導向程式設計-類別與物件 台南縣國立善化高中 蕭嘉民 老師
打造樂活好宅 居家生活佈置 租屋要注意.
面向对象 程序设计语言基础 马骏
第 1部分 软件测试概述.
JAVA 编 程 技 术 主编 贾振华 2010年1月.
第二章 Java基本语法 讲师:复凡.
第7章 异常处理.
C++复习2----类与对象.
第九章 未來機會與挑戰.
抽样理论 与 参数估计 主讲人:孟迎芳.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
主编:钟元生 赵圣鲁.
第二章 Java基本语法 讲师:复凡.
聚合型第一種:隱沒帶、島弧 例子:臺灣東方的琉球海溝、南美洲智利海溝. 聚合型第一種:隱沒帶、島弧 例子:臺灣東方的琉球海溝、南美洲智利海溝.
龍老師我不會Debug QQ.
方法進階及物件導向基礎 Lecturer: 楊昌樺.
第6章 面向对象的高级特征 学习目标 本章要点 上机练习 习 题.
Java程序设计 第17章 异常和断言.
方格紙上畫正方形.
JAVA 程式設計與資料結構 第三章 物件的設計.
對於成員(member)存取權的限制 成員的資料被毫無限制的存取,任誰都可以指定任意值給成員,Java語言為了防止這種現象的產生,規定:有一種成員的資料不能任由類別外部的任何人隨意存取。
判斷(選擇性敘述) if if else else if 條件運算子.
Usage Eclipse 敏捷方法工具介紹 實驗室網站:
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
第二章 Java基本语法 讲师:复凡.
精進優質 計畫方案 104-1良師甲工精進教學計畫 計畫目標 各教學單位辦理教師增能研習,期能對新課程的架構與 精神有更深一層的認知與準備。
Summary
Presentation transcript:

JUnit(java单元测试工具) 2017.11.20

介绍目标 1.了解java单元测试基本概念 2.掌握使用JUnit进行单元测试的方法 3.掌握JUnit的常用工具

什么是单元测试 我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情。所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试。

用更加通俗的话来描述单元测试就是:写了个类,要给别人用,会不会有bug?怎么办?测试一下。用main方法测试好不好?这种方法我们经常用,就是写一个方法实现一些功能,把方法的调用方式放在main函数中。这样的测试方式一个是使得main函数太过于混乱,再者测试过程需要人的仔细观察来辨别每个函数的功能实现,哪一个函数出错了,哪一个函数没有输出之类的问题层出不穷,单元测试就是来解决这些问题的。

JUnit4详解 JUnit是一个用于编写可复用测试集的简单框架,他是XUnit的一个子集。 Xunit是一套基于测试驱动开发的测试框架 PythonUnit CppUnit Junit 本次,我们将通过一个运算模块的单元测 试案例介绍JUnit的使用。

JUnit4的安装 Junit的下载地址https://github.com/junit-team/junit4/wiki/Download-and-Install

用我们编写的Test类进行测试

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

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

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

junit常用注解 1.@BeforClass:他会在所有的方法运行前被执行,static修饰 2.@AfterClass:它会在所有的方法运行结束后被执行,static修饰 3.@Before:会在每一个测试方法被执行前执行一次 4.@After:会在每一个测试方法运行后被执行一次

junit常用注解 5.@Test:将一个普通的方法修饰成为一个测试方法 @Test(expected=XX.class) @Test(timeout=毫秒) 6.@Ignore:所修饰的测试方法会被 测试运行期忽略 7.@RunWith:可以更改测试运行器 org.junit.runner.Runner

junit4的测试套件 1.测试套件的类必须是个空类,而且用public修饰 2.更改测试运行器Suite.class 3.将要测试的类作为数组传入到Suite.SuiteClasses({})中

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

总结 1.什么是单元测试 2.介绍JUnit4的使用 3.运行成功,运行失败的情况 4.JUnit4的运行流程 5.Junit4的常用注解 6.JUnit4的运行套件SuiteTest 7.JUnit4的参数化测试ParameterTest

感谢大家的收听!