对于一名测试工程师来说如果不能进行单元测试、接口测试,是非常遗憾的;因为功能测试只能占到测试收益的5%,强化代码能力对于目前的我们来说至关重要,我认为一名测试工程师至少要是一个中级以上的开发工程师,当然我也在努力朝着这个方向迈进,我们共勉;

第一步:安装eclipse,百度搜索官网直接下载最新版本,此软件为免费开源;

第二步:创建包cn.junit4创建一个Calculator类,代码如下:

package cn.junit4;public class Calculator {public  int result;public  int add(int operand1,int operand2){result=operand1+operand2;return result;}public int subtract(int operand1,int operand2){return result=operand1-operand2;}public int multiple(int operand1,int operand2){return result=operand1*operand2;}public int divide(int operand1,int operand2){return result=operand1/0;}public  int getResult(){return this.result;}}

第三步:创建junit test case,代码如下:

package cn.junit4;import static org.junit.Assert.*;import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;public class CalculatorTest {private static Calculator Cal= new Calculator();@BeforeClasspublic static void setUpBeforeClass() throws Exception {System.out.println("@BeforeClass");}@AfterClasspublic static void tearDownAfterClass() throws Exception {System.out.println("@AfterClass");}@Beforepublic void setUp() throws Exception {System.out.println("测试开始");}@Afterpublic void tearDown() throws Exception {System.out.println("测试结束");}@Testpublic void testAdd() {Cal.add(2,2);assertEquals(4, Cal.getResult());//fail("Not yet implemented");
    }@Testpublic void testSubstract(){Cal.subtract(4,2);assertEquals(2,Cal.getResult());}@Ignorepublic void testMultiply(){fail("Not yet implemented");}@Test(timeout=2000)public void testDivide(){for(;;);}@Test(expected=ArithmeticException.class)public void testDivideByZero(){Cal.divide(4,0);}}

第四步:在同一个包下创建另一个类Calculatortest2,代码如下:

package cn.junit4;import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;public class CalculatorTest2 {@BeforeClasspublic static void setUpBeforeClass() throws Exception {System.out.println("beforeclass类之前运行");}@AfterClasspublic static void tearDownAfterClass() throws Exception {System.out.println("Afterclass类运行结束");}@Beforepublic void setUp() throws Exception {System.out.println("@before");}@Afterpublic void tearDown() throws Exception {System.out.println("@After");}@Testpublic void test() {//fail("Not yet implemented");System.out.println("CalculatorTest2测试方法被调用");}}

第五步:创建junit4 test suite代码如下:

package cn.junit4;import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;@RunWith(Suite.class)
@SuiteClasses({ CalculatorTest.class, CalculatorTest2.class })
public class AllTests {}

第六步:运行junit4 test suite 完成Calculator类中方法的调用与预期一致  timeout=2000 为执行时间不得超过2秒而此方法中为死循环所以执行失败,excepected=ArithmeticException.class表示此方法执行后必须抛出ArithmeticException异常错误,用于验证是否抛出异常错误;AssertEquals()方法断言实际计算结果与预期结果是否一致;@ignore 标示的方法占时不执行;junit4 test suite主要用于让测试工程师实现并发批量执行测试用例;

转载于:https://www.cnblogs.com/wangyinxu/p/6362920.html

junit框架——单元测试相关推荐

  1. 用JUnit框架实现Java单元测试

    http://tech.it168.com/j/2007-08-27/200708271737659.shtml 单元测试是整个测试流程中最基础的部分,它们要求程序员尽可能早地发现问题,并给予控制,这 ...

  2. Android单元测试(一):JUnit框架的使用

    JUnit框架的使用 前言 工程介绍 JUnit介绍 什么是JUnit JUnit引入 JUnit注解 JUnit断言 JUnit使用 基础用法 参数化测试 assertThat用法 用法 自定义匹配 ...

  3. 使用junit进行单元测试_使用JUnit对ADF应用程序进行单元测试

    使用junit进行单元测试 JUnit是Java语言的单元测试软件包,由于ADF构建在J2EE框架之上,因此可以用于测试Oracle ADF应用程序. 单元测试基本上是根据某些定义的测试标准来验证最小 ...

  4. 使用NetBeans 7.4 beta提示进行更好的基于JUnit的单元测试

    在上一篇文章中 ,我写了NetBeans 7.4 beta中提供的提示 ,这些提示提高了开发人员避免Java异常处理带来的讨厌的运行时问题的能力. 在本文中,我将研究如何使用NetBeans 7.4 ...

  5. mock方法常用框架_基于MOCK对象和JUNIT框架测试DAO

    对于Java组件开发者来说,他们都盼望拥有一组能够对组件开发提供全面测试功能的好用的单元测试.一直以来,与测试独立的Java对象相比,测试传统型J2EE Web组件是一项更为困难的任务,因为Web组件 ...

  6. 说实话,写了这么多程序了,还从来没有用JUnit作为单元测试工具测试过,今天就来学习一下

    1.    说实话,写了这么多程序了,还从来没有用JUnit作为单元测试工具测试过,心理面感到真的是惭愧.原来的所有测试,我都是通过在控制台打印输出语句看结果,这样就可以根据自己打印的信息自己去判断, ...

  7. java如何使用JUnit进行单元测试

    http://www.cnblogs.com/fench/p/5936008.html 注:所有内容都是在eclipse上实现,关于eclipse的安装和jdk的安装配置,请看:http://www. ...

  8. Spring Boot配置Junit(单元测试)

    1 Junit JUnit是一个Java语言的单元测试框架.它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个. JUnit ...

  9. 技术篇——使用 Junit 实现单元测试

    有很多测试技术和工具可以在敏捷测试中进行单元测试,传统单元测试工具包括 JUnit 和 XUnit,最近几年出来的 BDD 单元测试工具有 Spock 和 Spec2.Spock 和 Spec2 可以 ...

最新文章

  1. 工作能力强的人有哪些共同特征?
  2. 屏蔽敏感词的正则表达式
  3. 原创,自己做的一个简单实用的提示小插件,兼容性很好,基本上都兼容!
  4. 分布式面试题(含解答)
  5. PE结构基址重定位表
  6. Spring Web Flow实例教程
  7. java applet配置_配置Java Applet的运行环境
  8. sqlite字段是否存在_【漏洞预警】Linux内核存在本地提权漏洞(CVE20198912)
  9. [Git高级教程(二)] 远程仓库版本回退方法
  10. NSA-LDL论文修改建议20211026BRT
  11. C语言中Uint8_t数据类型
  12. hadoop3.1集成tez和tez-ui
  13. Atitit.分布式远程调用  rpc  rmi  CORBA的关系
  14. 2.4.1 ALU-串行加法器和并行加法器
  15. 感知特性评价指标SSIM
  16. 恐怖的aliedit
  17. 机器翻译之人工智能方法
  18. java poco_DTO与POCO
  19. 定期存款怎么存定期存款怎么存?银行定期存款怎么存最划算?
  20. 高级计算机体系结构知识点,高级计算机体系结构知识点.pdf

热门文章

  1. java list初始容量_java中快速创建带初始值的List和Map实例
  2. android 今日头条布局,Android今日头条UI适配完善版
  3. mysql5.5备份数据库_mysql5.5数据库备份
  4. 【Luogu1341】无序字母对(并查集联通,欧拉路模板)
  5. UVa 1585 - Score
  6. python中修饰器的优点和作用_Python入门基础教程之装饰器
  7. python脚本用类编写_跟老齐学Python之编写类之二方法
  8. 高职对计算机课程要求,高职计算机课程对学生编程能力培养.doc
  9. Python入门-Python中的包,impot,from,import
  10. 组合数学-容斥原理-求指定区间内与n互素的数的个数