在eclipse中使用Junit进行单元测试


今天学会了用Junit在eclipse中进行单元测试,代码的测试工作,在整个软件开发中占有总要的地位,无论是代码开发阶段,还是代码维护阶段。另外边开发边测试的这种模式,同样也

会大大的提高开发效率。话不多说,先进行一个简单的Junit测试小demo。


  • 一、eclipse运行界面


  • 二、编写测试类代码
package com;

public class Calculate {
/**
*
* @param 你是毅强吧
* @param 2018/3/19
* @return
*/
public int add(int a, int b) {
return a + b;
} public int substract(int a, int b) {
return a - b;
} public int multiply(int a, int b) {
return a * b;
} public int divide(int a, int b) {
return a / b;
}
}

这里我们建立Calculate类,并且在Calculate类中建立add(),substract(),multiply(),divide()

四个方法用来做测试函数。


  • 三、手动编写测试类
package com;

import static org.junit.Assert.*;

import org.junit.Test;

public class CalculateTest {
@Test
public void add() {
assertEquals(8,new Calculate().add(3,5));
}
}

在测试函数中,由于我们手动编写测试函数,只写出add()

函数进行测试,其余的测试函数会在自动生成中具体给出。


  • 四、测试步骤之手动编写

    • 1.添加Junit

    • 2.测试运行

    • 3.测试结果


  • 五、测试步骤之自动生成

    • 1.添加自动生成

    • 2.填写对应名称

    • 3.选择测试方法

    • 4.自动生成的测试类代码段

      package com;
      
      import static org.junit.Assert.*;
      
      import org.junit.Test;
      
      public class CalculateTest {
      
          @Test
      public void testAdd() {
      fail("Not yet implemented");
      } @Test
      public void testSubstract() {
      fail("Not yet implemented");
      } @Test
      public void testMultiply() {
      fail("Not yet implemented");
      } @Test
      public void testDivide() {
      fail("Not yet implemented");
      } }
    • 5.改写自动生成代码段

        ```java
      package com; import static org.junit.Assert.*; import org.junit.Test; public class CalculateAutoTest { @Test
      public void testAdd() {
      assertEquals(10,new Calculate().add(3,7));
      } @Test
      public void testSubstract() {
      assertEquals(3,new Calculate().substract(5, 2));
      } @Test
      public void testMultiply() {
      assertEquals(20,new Calculate().multiply(2, 10));
      } @Test
      public void testDivide() {
      assertEquals(10,new Calculate().divide(1, 10));
      } }
      ```
    • 6.测试结果

    注意:由于在除法函数时,1/10的结果不为10,所以出现测试报错。


利用Junit实现eclipse单元测试的更多相关文章

  1. 软件工程第二次作业(Android Studio利用Junit进行单元测试)

    一.开发工具的安装和运行 1.安装 由于我的电脑之前就安装好了Android Studio,就不再重装了.在这里就给出几条安装过程中需要注意的地方吧: 安装包最好在官网下载已经带有Android SD ...

  2. JUnit使用Eclipse建立Test Case - 就是爱Java

    传统的测试方式,是以main(),作为代码的起点,而这次Mix将利用JUnit 进行测试,Eclipse有提供完整的整合环境,可以方便地使用JUnit,让Mix快速地进行单元测试,首先,开始撰写第1个 ...

  3. 基于Springboot+Junit+Mockito做单元测试

    前言 前面的两篇文章讨论过< 为什么要写单元测试,何时写,写多细 >和<单元测试规范>,这篇文章介绍如何使用Springboot+Junit+Mockito做单元测试,案例选取 ...

  4. 利用JDBC连接Eclipse和mySQL5.1.26数据库

    初学JDBC,看了看书,自己动手的时候还是有很多地方有问题,最终终于解决了实现了数据库的连接.现将整个步骤描述如下: 环境:mySQL5.1.26(win 32bit), Eclipse JavaEE ...

  5. IDEA中利用JUnit进行单元测试

    打开IntelliJ IDEA工具,Alt+Ctrl+S,打开设置窗口,点击进入Plugins. 从插件资源库中搜索JunitGenerator V2.0版本

  6. 如何利用JUnit开展一个简单的单元测试(测试控制台输出是否正确)

    待测类(CreateString)如下: public class CreateString { public void createString() { //Output the following ...

  7. JUnit使用Eclipse建立Test Suite - 就是爱Java

    当JUnit有多个或所有的Test Case要执行,此时就需要Test Suite来管理众多的Test Case,利用Eclipse的整合开发环境,可以针对多个不相关的Test Case或Test S ...

  8. java使用Junit工具进行单元测试

    目录 1.类的定义: 2.Junit工具的使用: 3.对该类进行单元测试并查看结果: 4.记录各个阶段的时间 5.将过程记录在个人博客上(github地址) 1.类的定义:类是同一事物的总称,类是封装 ...

  9. jacoco + eclipse单元测试覆盖率

    概念 Jacoco:JaCoCo是一个开源的覆盖率工具,它针对的开发语言是java,其使用方法很灵活,可以嵌入到Ant.Maven中:可以作为Eclipse插件,可以使用其JavaAgent技术监控J ...

随机推荐

  1. IE 出现stack overflow 报错的原因归纳

    1. 重定义了系统的触发事件名称作为自定义函数名如:  onclick / onsubmit ...  都是系统保留的事件名称,不允许作为重定义函数名称: 2. IE缓存满了,无法写入.解决办法:清空 ...

  2. Redis学习---面试基础知识点总结

    [学习参考] https://www.toutiao.com/i6566017785078481422/ https://www.toutiao.com/i6563232898831352323/ 0 ...

  3. selenium-键盘和鼠标事件

    常见的键盘操作 from selenium.webdriver.common.keys import Keys 模拟enter键:send_keys(Keys.ENTER)键盘F1~F12: send ...

  4. 使用PhotoShop将视频转为gif格式

    由于文档中不方便上传视频,尤其是一些短视频,将其制作成gif格式更便于浏览,刚好PhotoShop中有这种功能,笔者在这里分享一下. 在PS中打开需要转换格式的视频文件,选择文件选项导出中的导出为We ...

  5. python spawnv用法

    test.py import os import string def run(program, *args): file = program result = os.spawnv(os.P_WAIT ...

  6. volatile和synchronized的区别与联系[转]

    volatile是一个变量修饰符,而synchronized是一个方法或块的修饰符.所以我们使用这两种关键字来指定三种简单的存取变量的方式. int i1;                       ...

  7. js 毫秒转换为标准时间

    function dateForm(time){ var unixTimestamp = new Date( 1477386005*1000 ); commonTime = unixTimestamp ...

  8. sublime text3 setting-user

    { "caret_style": "smooth", "find_selected_text": true, "font_size ...

  9. Python高级网络编程系列之第一篇

    在上一篇中我们简单的说了一下Python中网络编程的基础知识(相关API就不解释了),其中还有什么细节的知识点没有进行说明,如什么是TCP/IP协议有几种状态,什么是TCP三次握手,什么是TCP四次握 ...

  10. jQuery封装自定义事件--valuechange(动态的监听input,textarea)之前值,之后值的变化

    jQuery封装自定义事件--valuechange(动态的监听input,textarea)之前值,之后值的变化 js监听输入框值的即时变化 网上有很多关于 onpropertychange.oni ...