单元测试 &集成测试&系统测试&验收测试

 


一、单元测试:最小可测试模块(函数(C语言)、类(java)、一个功能等)
针对代码
原则:1、尽可能保证各测试用例互相独立、不使用相互依赖的方法,可以用模拟方法来替代
2、一般由代码的开发人员来实施,或敏捷开发中的结对人员


单元测试益处 :
1、尽早发现缺陷 ,敏捷研发:TDD(测试驱动开发) 先编写单元测试,再编号功能代码,保证代码能通过单元测试用例通过,也是对需求的二次确认和清晰理解
2、有利于重构,完美的单元测试有利于重构,可快速识别
3、简化集成:保证最小单元模块的稳定性和正确性
4、文档 减少文档 单元测试包含了对模块的基本理解,通过对代码的阅读就可以基本理解需求
5、用于设计 可以把设计思路在单元测试的代码中体现出来
限制:1不能覆盖所有执行路径,捕捉到所有错误
2、每一行代码一般需要3~5行测试代码才能完成单元测试,需要找到一个平衡点
单元测试框架: Junit (java) nunit(net) Cppunit (C++)

 

编程Junit:

1.新建java project--右键“参数”--add library--选中Junit

2.把要测试的程序导入项目,选中.java,右键新建“Junit test case”,选中“setup”、“teardown”,选择测试方法。查缺补漏,即生成单元测试脚本--测试用例。

3.选中单元测试脚本,右键“run as”Junit Test运行

 

 

二、集成测试:在单元测试的基础上,针对已经完成单元测试的功能进行组装,针对单元测试的接口


主要实施方案:

1 bigbang 把大部分功能组成在一起进行测试
2自顶向下 逐层
3 自底向上 常用 从程序模块的最低模块开始,逐层向上组装测试,好处:针对已经组装的测试,不再需要针对上一层组装模块,比较好的找到缺陷的位置 (传统瀑布式)
4、核心系统集成 多用于敏捷开发
5、高频集成 多用于敏捷开发

 


集成测试VS测试
1、测试对象不同 
单元:以最小单元为测试对象
集成:以模块和子系统为单元进行测试,测试模块间接口的关系
2、测试依据不同
单元:依据详细设计进行测试
集成:针对概要设计
3、测试方法不同
集成:关注接口的集成
单元:只关心单元内部

 

集成&单元 一般使用模拟环境来测试

 

三、系统测试多用真实环境来进行测试
系统测试包括内容:

性能测试、功能测试和稳定性测试等 多种类型测试,企业内专职测试人员一般主要用于系统测试阶段


系统测试人员主要关注点:

测试相关流程、测试方法、各个阶段的输入输出条件,和测试当中需要注意的问题


系统测试的关注点:

1系统本身的使用,功能上关注使用
2关注系统与其它相关系统间的连通性
3关注系统在不同使用压力下的表现:大并发量,权限情况,cpu内存在达到权限情况下的系统表现
4关注系统在真实使用环境下的表现

 

系统测试 vs 集成测试
1、测试对象不同 
集成:是由通过了单元测试的各个模块所集成起来的组件 
系统测试:除了软件之外,还包括计算机硬件及相关的外围设备、数据采集和传输机构、支持软件、系统操作人员等整个系统
2、测试时间
集成:介于单元测试与系统测试之间
系统测试:在集成测试之后
3、测试内容
集成:测试各个单元模块之间的接口
系统:整个系统的功能和性能
4、测试角度:
集成:偏于技术
系统:偏于业务

 

四、

验收测试
正式的测试 ,由用户决定是否要交付
细分:
用户验收测试(开发方)
运行验收测试(运维层面出发验证是否系统可以正常运行)
例如上线后的备份 容灾 灾难恢复等场景是否正确
合同和规范验收测试  合同、政府和法律法规
alpha 测试       场所和环境由开发方提供,用户执行
beta 测试        用户提供的场所和环境来进行测试 
realise 版本     正式可供交付的版本


A TDD验收测试驱动开发:开发前先定义好用户故事,再开发用户功能代码

 

转载于:https://my.oschina.net/u/3019895/blog/788978

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值