软件测试2gkd
JUnit单元测试
一、单元测试的概念和目的
什么是单元测试?单元测试是在开发过程中要进行的最低级别的测试活动,是需要与开发同步进行的工作,它由程序员自己完成,属于编码的一部分。单元测试是为了确保类的某一个特定方法能成功执行一系列特定的任务,每个测试都确保只要给定输入,方法将输出预期的结果。单元测试是对软件基本组成单元进行的测试,而且软甲单元是在与程序的其他部分相隔离的情况下进行独立的测试。
单元测试测什么?1.函数、过程或完成某一功能的程序块 2.类的成员函数 3.核心方法及可能引入错误的地方 4.特定的边界条件 5.复杂算法 6.复杂的业务逻辑 7.需求变动频繁之处
软件系统是由许多单元构成的,这些单元可能是一个对象或是一个类,也可能是一个函数,也可能是一更大的单元——组件或模块。要保证软件系统的质量,首先就要保证构成系统的单元的质量,也就是要开展单元测试活动。通过充分的单元测试,发现并修正单元中的问题,从而为系统的质量打下基础。
二、JUnit的概念
JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。 JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。
三、JUnit的特性
JUnit是一个开放源代码的Java测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系xUnit的一个实例(用于java语言)。
它包括以下特性:
(1)可以使测试代码与产品代码分开,更有利于代码的打包发布和测试代码的管理。
(2)针对某一个类的测试代码,以较少的改动便可以应用另一个类的测试,JUnit提供了一个编写测试类的框架,使测试代码的编写更加方便。
(3)易于集成到程序中的构建过程中,JUnit和Ant的结合还可以实施增量开发。
(4)JUnit的源代码是公开的,可以进行二次开发。
(5)Junit具有很强的扩展性,可以方便地对JUnit进行扩展。
四、总结
检验各单元模块是否被正确地编码,即验证代码和软件系统设计的致性是单元测试的主要目标,但是单元测试的目标不仅是测试代码的功能性,还需确保代码在结构上可靠且健壮,能够在各种条件下(包括异常条件,如异常操作和异常数据)给子正确的响应。如果这些系统中的代码未被适当测试,则其弱点可被用于侵入代码,并导致安全性风险(例如内存泄漏或被窃指针)以及性能问题。执行完全的单元测试,可以比较彻底地消除各个单元中所存在的问题,避免将来功能测试和系统测试问题查找的困难,从而减少应用级别所需的测试工作量并且彻底减少发生误差的可能性。概括起来,单元测试是对单元的代码规范性、正确性、安全性、性能能等进行验证,通过单元测试。而Junit是测试执行的开始阶段,即首先对每一个程序模块进行单元测试,以确保每个模块能正常工作。单元测试是程序员对自己的代码进行测试后,所以是大多是白盒测试。JUnit的最大作用就是可以方便的进行单个方法的测试。可与其他框架整合方便了JUnit的使用。
软件测试2gkd的更多相关文章
- 小公司0成本基于Pythony的单元\GUI\Web自动化\性能的几个开源软件测试工具
以下是当前流行的几款适合小公司0成本的几个开源软件测试解决方案: 1.单元测试 a.unittest :Python自带的单元测试框架 b.pyunit:Junit的Python版本 2.使用Pyho ...
- Anliven - 基础知识梳理汇总 - 软件测试
基础知识梳理 - 软件测试 - 概念 基础知识梳理 - 软件测试 - 分类 基础知识梳理 - 软件测试 - 流程 基础知识梳理 - 软件测试 - 用例 基础知识梳理 - 软件测试 - 方法 基础知识梳 ...
- IEEE829-2008软件测试文档标准介绍
1998版中定义了一套文档用于8个已定义的软件测试阶段: 测试计划: 一个管理计划的文档 包括: 测试如何完成 (包括SUT的配置). 谁来做测试 将要测试什么 测试将持续多久 (虽然 ...
- 自动化测试工具QTP的使用实例 分类: 软件测试 2015-06-17 00:23 185人阅读 评论(0) 收藏
1. QTP简介 1.1QTP功能与特点 QTP是QuickTest Professional的简称,是一种自动化软件测试工具.在软件的测试过程中,QTP主要来用来通过已有的测试脚本执行重复的手动测试 ...
- <<软件测试实战>>读书笔记
软件测试基础 软件的复杂度已经超越了人的理解能力 1. 虽然高抽象的层次语言,程序框架,程序库等提高了人的生产力,但是还是需要开发者深入理解细节,可以减少开发时间,但是无法减少开发者学习整个技术栈的时 ...
- 软件测试基本理论-IBM模式
软件测试基本理论(1) IBM生产模式 1 参考书目 <IBM-从菜鸟到测试架构师-一个测试工程师的成长日记> 出版社:电子工业出版社 印次:2013年6月 作者:IBM主要工程师 2 ...
- 安卓下如何使用JUnit进行软件测试
软件测试作为程序员必备的一项技能是决定软件开发周期长短以及软件运行成败的关键,可以说好的软件不是代码写得好而是有效的测试决定的.本文将介绍在android下利用eclipse进行开发时如何使用JUni ...
- 关于软件测试人员能力模型的建立(from知乎)
转自: http://www.zhihu.com/question/20254092 测试思维方面:1.测试基础理论(测试流程.测试的基础知识)2.测试用例设计方法论(黑盒.白盒)3.软件质量体系(建 ...
- Web 软件测试 Checklist 应用系列,第 1 部分: 数据输入
Web 软件测试 Checklist 应用系列,第 1 部分: 数据输入 本文为系列文章"Web 软件测试 Checklist 应用系列"中的第一篇.该系列文章旨在阐述 Check ...
随机推荐
- 为Vue.js添加友好日志
const isDebugEnabled = process.env.NODE_ENV !== "production"; const isInfoEnabled = true; ...
- iOS UIView 选择性倒角
有些APP中会有卡券,卡券做成了选择性倒角,例如左上,右上倒角.非常美观.看一下iOS的实现: #import "Masonry.h" @interface WJWDaojiaoV ...
- Multi-Projector Based Display Code ---- ImageViewer
Overview Image viewer is a typical application for large display. It makes use of the high-resolutio ...
- javascript 表达式
// for(表达式1;表达式2;表达式3){// 循环体语句;// }// 先执行表达式1,在执行2表达式,// 如果2表达式结果为false,退出循环 ...
- python基础2 数据类型、数据拼接、数据转换
一.数据类型 1.字符串 字符串英文string,简写str,只要是被[单/双/三引号]这层皮括起来的内容,不论那个内容是中文.英文.数字甚至火星文.只要是被括起来的,就表示是字符串类型 如:prin ...
- P1368 工艺 SA/最小表示法
正解:SA/最小表示法 解题报告: 传送门! 听说正解是最小表示法,,,O(n)然后常数还挺小的,,, 但是我不会QAQ! 所以先写下SA的做法趴,,,等get了最小表示法再来写正解QAQ 就这种题算 ...
- Spring Boot 对请求的映射
在SpringBoot中对请求资源的映射有三种方式: 1.通过编写一个Controller请求,获得客户端发送过来的请求就转发出去 //通过这种方式可以来映射页面请求路径 @PostMapping(& ...
- spring-session 2.0 实现细节
一. 前置知识 1. redis 在键实际过期之后不一定会被删除,可能会继续存留 2. 具有过期时间的 key 有两种方式来保证过期 一是这个键在过期的时候被访问了 二是后台运行一个定时任务自己删除过 ...
- 【Eclipse】-NO.163.Eclipse.1 -【Eclipse springboot 1.x 创建maven工程初始化报错】
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- ThinkPHP安全规范指引
流年 发布于 ThinkPHP官方博客: https://blog.thinkphp.cn/789333 本文主要和大家探讨一下ThinkPHP的安全注意事项,可以作为ThinkPHP建议的安全规范实 ...