知识大全 JUnit学习笔记之NetBeans入门篇

Posted

篇首语:青春不以山海为远,志愿只向家国未来。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JUnit学习笔记之NetBeans入门篇相关的知识,希望对你有一定的参考价值。

JUnit学习笔记之NetBeans入门篇  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  一 简介  本文与之前的《JUnit学习笔记》所记述的内容是一致的 只不过IDE换成了最近开始试用的NetBeans NetBeans是新近流行的一款堪与Eclipse媲美的IDE 有Sun的支持 最新版本 RC 本文使用的是 中文版 可以从下载   JUnit是一款由Erich Gamma(《设计模式》的作者)和Kent Beck(极限编程的提出者)编写的开源的回归测试框架 供Java编码人员做单元测试之用 可以从网站上免费获得 本文使用的是NetBeans自带的JUnit 二 创建项目  下面打开NetBeans 然后点击菜单 文件 > 新建项目 打开 新建项目 对话框

  

  请在 类别 中选择 常规 再从 项目 中选择 Java应用程序 然后点击 下一步 进入 新建Java应用程序 对话框  

  

  在这个对话框中需要设置项目的名称以及项目所在目录 我为自己的项目起名为JUnitTest 项目位置 为G:\\YPJCCK\\JUnit\\NetBeans 此外 请将 创建主类 前的对号去掉 项目创建好后 已经自带了JUnit 三 编写用于测试的JavaBean  用于测试的JavaBean很简单 名为Book 只有id和name两个属性 这两个属性将分别用于两个用例当中 下面开始编写该JavaBean   请点击 文件 > 新建文件 打开 新建文件 对话框

  

  确保 项目 选择的是JUnitTest 然后在 类别 中选中Java类 在 文件类型 中选中Java类 点击 下一个 进入下一窗口

  

  设置类名为Book 包为net zheng junit test 设置完成后点击 完成 修改代码如下   package net zheng junit test;  public class Book     private String id = null;    private String name = null;    public String getId()       return id;        public void setId(String id)       this id = id;        public String getName()       return name;        public void setName(String name)       this name = name;      至此 用于测试的JavaBean编写完成 四 编写测试用例  这里只用了一个类进行测试 名为BookTest 该类继承自junit framework TestCase类 BookTest类包含两个用例 分别对应该类的testId和testName方法 即每个方法实现了一个测试用例 注意 在JUnit中 junit framework TestCase的子类中每个用来实现测试用例的方法都必须以testXXX的格式来命名 这些方法在运行时会被执行 此外 BookTest还包括setUp和tearDown这两个方法 前者在每个测试方法开始之前执行 多用来做初始化 后者在每个测试方法完成之后执行 多用来清理资源 下面开始编写BookTest   请点击 文件 > 新建文件 打开 新建文件 对话框

  

  确保 项目 选择的是JUnitTest 然后在 类别 中选中JUnit类 在 文件类型 中选中现有类的测试 点击 下一个 进入下一窗口

  

  选择要测试的类 点击 完成 修改代码如下   package net zheng junit test;  import junit framework TestCase;  import junit framework Assert;  public class BookTest extends TestCase     Book book = null;    //建议为测试类创建构造    public BookTest(String name)       super(name);        protected void setUp() throws Exception       //调用超类的setUp() 以确保测试环境被初始化      super setUp();      System out println( 测试开始! );      book = new Book();      System out println( book对象被初始化! );        protected void tearDown() throws Exception       System out println( book对象将被清理! );      book = null;      System out println( 测试结束! );      //调用超类的tearDown() 以确保测试环境被清理      super tearDown();        public void testId()       book setId( ); //设置id属性的值为       //使用Assert查看id属性的值是否为       Assert assertEquals( book getId());      System out println( id属性被测试! );        public void testName()       book setName( ASP ); //设置name属性的值为ASP      //使用Assert查看name属性的值是否为JSP 这是个必然出现错误的测试      Assert assertEquals( JSP book getName());      System out println( name属性被测试! );      这里setUp和tearDown方法没什么好说的 就是执行了对book对象的初始化和清理 不过testId和testName需要说明一下 前者是在对book的id属性进行测试 首先赋值为 然后使用Assert的assertEquals方法查看id属性中存放的值是否是期待的值 由于我的期待值也是 所以执行后这个用例应该是成功的 后者则是对book的name属性进行测试 也是首先赋值为 ASP 然后使用Assert的assertEquals方法查看其值是否是期待的 由于我特意将期待值设定为根本不可能的 JSP 因此这个用例执行后会出现一个错误 但请注意 由于我是特意要让测试出现错误 所以将期待值设定成了不可能的值 如果你是测试人员 请千万不要这么做 否则如果别的地方导致了错误 很容易给自己造成不必要的麻烦   下面简单介绍一下上边用到的静态类junit framework Assert 该类主要包含 个方法    .assertEquals()方法 用来查看对象中存的值是否是期待的值 与字符串比较中使用的equals()方法类似    .assertFalse()和assertTrue()方法 用来查看变量是是否为false或true 如果assertFalse()查看的变量的值是false则测试成功 如果是true则失败 assertTrue()与之相反    .assertSame()和assertNotSame()方法 用来比较两个对象的引用是否相等和不相等 类似于通过 == 和 != 比较两个对象    .assertNull()和assertNotNull()方法 用来查看对象是否为空和不为空;   .fail ()方法 意为失败 用来抛出错误 我个人认为有两个用途 首先是在测试驱动开发中 由于测试用例都是在被测试的类之前编写 而写成时又不清楚其正确与否 此时就可以使用fail方法抛出错误进行模拟 其次是抛出意外的错误 比如要测试的内容是从数据库中读取的数据是否正确 而导致错误的原因却是数据库连接失败

  五 运行BookTest  编写好BookTest后 就可以运行了 请在 项目 栏中选中BookTest 点击鼠标右键 选择 运行文件 测试信息会从 输出 窗口输出

  

  六 测试套件  当有多个测试类需要一次性进行测试时 可以使用测试套件来完成这项工作   在NetBeans中 点击 文件 > 新建文件 打开 新建文件 对话框

  

  确保 项目 选择的是JUnitTest 然后在 类别 中选中JUnit类 在 文件类型 中选中测试套件 点击 下一个 进入下一窗口

  

cha138/Article/program/Java/ky/201311/28271

相关参考

知识大全 NetBeans IDE开发JSP快速入门[2]

NetBeansIDE开发JSP快速入门[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  展

知识大全 NetBeans IDE开发JSP快速入门[1]

NetBeansIDE开发JSP快速入门[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  建

知识大全 JUnit入门及应用

JUnit入门及应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  相关概念 &nbs

知识大全 PHP学习笔记之面向对象设计

PHP学习笔记之面向对象设计  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  面向对象设计是php

知识大全 ASP.NET学习笔记之事件

ASP.NET学习笔记之事件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一事件的运行原理&n

知识大全 Spring的IoC学习笔记之BeanFactoryPostProcessor

Spring的IoC学习笔记之BeanFactoryPostProcessor  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,

知识大全 ASP.NET学习笔记之c#必会

ASP.NET学习笔记之c#必会  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nbs

知识大全 ASP.NET学习笔记之.net代码技巧

ASP.NET学习笔记之.net代码技巧  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一usi

知识大全 JBossSeam学习系列之五--完结篇

JBossSeam学习系列之五--完结篇  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  由于前段

知识大全 十篇读书笔记(有十个好词.两个好句有理由.一个好段)

大家帮帮忙!十篇读书笔记(有十个好词.两个好句有理由.一个好段)滴水穿石的启示潍坊市寒亭区高里镇东南孙小学六年级二班陈高倩丝丝细雨滴在脸上,清凉清凉的,小水滴也有力量吗?在读了语文主题学习丛书《滴水穿