`

JUnit流程及注意点

    博客分类:
  • Test
阅读更多

一、固定流程
1、import导入junit.framework.*和junit.extensions.*(可选)
2、从TestCase extends一个类
3、定义储存状态的公用实例变量。
4、通过overriding setUp()来初始化公用变量。
5、通过overriding tearDown()在测试后清除初始化。
6、创建testXXX()的测试方法。
7、定义一个suite(),指定测试哪些类

二、注意点
1、当一个失败或者错误出现的时候,当前测试方法的执行流程将会被中止,但是(位于同一个测试类中的)其它测试将会继续进行。
2、对数组使用assertEquals()时,并不是比较数组的内容,而是比较数组引用本身,这大概不是我们要的。
3、当有测试失败的时候,无论如何都不能给原有代码再添加新的特性。
4、如果没有suite(),那么所有以test开头的方法都会被JUnit自动运行;否则就是按suite()指定的方法来运行。(public static Test suite(),常用到的方法是:TestSuite.addTest(Test test)和TestSuite.addTestSuite(Class testClass))
5、开始新项目时,总是从自定义基类继承而不是直接从JUnit的类继承是一个好主意,即使你的基类一开始没有添加任何额外的功能。这样的好处是,当你需要添加一个所有测试类都需要的方法时,可以简单得编辑你的基类,而不需要改动项目中的所有test case。
6、如果你编写了测试,但是正在编写能够通过测试的实现代码,那么这些还不具备实现代码的新测试未能通过,怎么办?解决的办法就是改名!因为JUnit是把“test”开头的方法作为测试来运行的,所以你只要把暂时无需测试的方法改名,比如“pendingTest”开头就行了。

三、新思维
1、我要对代码如何进行测试呢?
2、尽量把GUI代码和业务逻辑分开,有利于重用业务逻辑,也有利于测试。
3、测试驱动开发就是在编写实现代码之前,先编写测试代码

分享到:
评论

相关推荐

    反射和注解模拟JUnit4单元测试例子

    介绍如何利用反射和注解去简单的模拟JUnit4单元测试的使用,之所以选择JUnit4是...需要注意的是这里并不是完全的模拟,只是简单实现了一下Runner类和JUnit注解相关的工作流程。所以本文的主要目是介绍反射和注解的使用

    Eclipse的使用

    eclipse的java project开发流程及注意事项,并介绍了Eclipse的快捷键和Junit单元测试工具

    2022年java简历自我评价6篇.docx

    *熟悉电脑主板的布线规则及注意事项 *能够独立完成网表导入到出 GERBER 整个流程 *会建零件维护零件库 *能基本看懂英文 LAYOUTGUIDE *熟悉 linux 服务器、windows serverxx 服务器的配置与管理 *网络安全方面的管理...

    软件工程仓库管理系统软件测试.docx

    实验五成绩: 黑白盒测试技术设计测试用例 1.1测试范围 5.1.1 测试目的:测试是为了发现程序中或处理流程中的错误而执行的过程。 5.1.2 预期结果:系统运行正常,与用户交互流畅,数据处理正确并能与数据库正确相连...

    automacaoMagalu:使用Java在Selenium中Magalu站点的Web自动化

    自动化程序在在线商务门户中执行流程,在该门户中,它选择产品并验证是否已将产品添加到购物车中。 指示: 从安装JDK(您需要以Oracle用户身份登录才能下载); 从安装“面向Java开发人员的Eclipse IDE” IDE; 要...

    自我评价java程序员简历自我评价.pdf

    1. 电子电路设计:文中提到对主板的布线规则及注意事项的了解,考虑到EMI、信号时序、散热等问题,这些都是电子电路设计的关键要素。 2.pcb设计:文中提到独立完成网表导入到出GERBER整个流程,这是pcb设计的基本...

    突破程序员基本功的16课.part2

    5.8.4 注意多线程执行环境 5.9 小结 第6课 流程控制的陷阱 6.1 switch语句陷阱 6.1.1 default分支永远会执行吗 6.1.2 break的重要性 6.1.3 switch表达式的类型 6.2 标签引起的陷阱 6.3 if语句的陷阱 6.3.1...

    expression:基本算术

    必须注意以下几点: 表达式将仅包含整数,以及以下非整数字符:'(',')','+','-','*','/'。 括号中包含必须在单独的线程中评估的工作单位。 表达式具有任意长度。 表达式可以具有任意级别的嵌套。例子: 输入...

    基于Vue+SpringBoot开发的满意度调查问卷系统源码+sql数据库+项目说明.zip

    问卷的发放、回收、统计流程复杂,容易产生漏卷废卷统计错误等问题,问卷可控性差。统 计与分析内容难度较大,整体效果不好。 依托于互联网中的调查问卷系统能够高效地执行大批量的问卷调查并且增强调查结果 的客观...

    spring4.1核心包

    Spring Beans之上将横切关注点模块化 2. spring-aspects-4.1.1.RELEASE.jar 提供的对AspectJ框架的整合,也是A面向切面编程。 AspectJ可用于基于普通Java对象的模块化 注意:aop 和 aspects区别: ...

    网上商城需求报告

    4.注意锻炼沟通能力(技术交流) ---------电子商务系统需求------------- 1.用户管理模块  注册、登录、权限(登录)检查 2.产品浏览模块  主界面、二级浏览界面 3.购物车模块 产品添加、修改数量、删除等功能 4....

    t淘淘商城项目 商城项目 视频和源码教程 详细

    Maven定义了软件开发的整套流程体系,并进行了封装,开发人员只需要指定项目的构建流程,无需针对每个流程编写自己的构建脚本。 2、依赖管理。除了项目构建,Maven最核心的功能是软件包的依赖管理,能够自动分析...

    dangdang和smartstruts2.rar

    2.了解项目开发流程,培养开发能力(编码能力、查错排错能力、自学新技术能力) 3.了解项目开发文档(需求分析文档、详细设计文档、测试文档) 4.注意锻炼沟通能力(技术交流) ---------电子商务系统需求------------- 1....

    MySQL 5.1中文手冊

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

    sunshine:Sunshine允许您直接从Java代码管理自动化测试的套件

    发展笔记如果您将安装并通过CLI使用Git,则所有必需的工作流程将自动执行。 否则,您可以通过运行./workflows脚本手动进行操作。代码格式我们使用格式化代码。 请运行./gradlew spotlessApply手动调用格式。代码评估...

    MySQL 5.1参考手册 (中文版)

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

    mysql官方中文参考手册

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

    MYSQL中文手册

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔...

    MySQL5.1参考手册官方简体中文版

    12.2. 控制流程函数 12.3. 字符串函数 12.3.1. 字符串比较函数 12.4. 数值函数 12.4.1. 算术操作符 12.4.2. 数学函数 12.5. 日期和时间函数 12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 ...

Global site tag (gtag.js) - Google Analytics