-
单元测试:
一原则:
1.尽可能保证各个测试用例是相互独立的。
2.一般由代码的开发人员来实施用以检验所开发的代码功能符合自己的设计要求。
二好处:
1.能尽早发现缺陷
2.利于重构
3.简化集成(为以后集成测试作铺垫)
4.文档
5.用于设计
三限制:
1.不可能覆盖所有的执行路径,不可能保证捕捉到所有的错误。
2.每一行代码一般需要3-5行测试代码才能完成单元测试。所以存在投入和产出的一个平衡。
框架:
1.xunit:
2.Junit:
3.nunit:
4.PHPunit:
5.cppunit:
(以上待理解)
四定义:
又称模块测试。是针对软件设计设的最小单位---程序模块进行正确性的测试工作。
五测试对象:
类、文件、窗口、函数、菜单等。
六测试依据:详细设计说明书。
七测试目的:在于检查每个程序单元能否正确实现详 细说明书中的模块功能、性能等要求, 发现各模块内部可能存在的各种错误 。
测试方法:黑盒测试为主,重点模块结合白盒测试
其他:多个模块可以并行地独立进行单元测试。
重要概念:
1.驱动模块:模拟被测模块的上级模块。
2.桩模块:模拟被测模块工作过程中所调 用的模块。
如图示例:
集成测试:
也叫组装测试。通常在单元测试的基础上 ,将所有的程序模块进行有序的、递增的 测试。
软件集成的过程是一个持续的过程,会形 成很多个临时版本,在每个版本提交时, 都需要进行冒烟测试,既对程序主要功能 进行验证。
在单元测试的基础上,测试在将所有的软 件单元按照概要设计规格说明的要求组装 成模快、子系统或系统的过程中各部分功 能是否达成或实现相应技术指示及要求的 活动。
测试方法:
1.非增式:对所有模块进行单元测试后, 按程序结构图将各个模块连接 起来,把连接后的程序当作一 个整体进行测试。如图示例:
2.增式:
①自顶向下测试:按结构图自上而 下进行测试,即模块集成的顺序是 首先集成主控模块,然后按照控制 层次结构向下集成。从属于主控模 块的模块按深度优先或广度优先方 式集成到结构中。如图:
步骤:⑴主控模块作为测试驱动(A) ,所有与主控模块直接相 连 的模块作为桩模块。
⑵根据集成方式(深度/广度) ,下层的桩模块一次一个的被替 换为真正的模块。(现实中会有 多个桩模块)
⑶在每个单元被集成时都必须进 行了单元测试。
②自底向上:从最底层模块开始,按照结 构图,从下而上地逐层将各 模块组装起来,需要对未经 集成测试的模块开发驱动模 块。如图;
重要概念:1.冒烟测试:
2.回归测试:
方案:
1.big bang
2.自顶向下
3.自底向上
4.核心系统集成
5.高频集成
(以上待理解)
单元&集成的区别:
①对象不同
②依据不同
③方法不同
系统测试:
是经过集成测试的软件作为计算系统的一部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现潜在问题,保证系统的正常运行。
关注点:
1.系统本身的使用
2.软件与其他相关系统间的连通
3.软件在不同使用压力下的表现
4.软件在真实环境下的表现
系统测试&集成测试的区别:
集成:由通过了单元测试的各个模块所集成起来的构件。
系统:除了软件外,还包括了计算机硬件及相关的外围设备数据采集和传输机构,支持软件,系统操作人员等整个系统。
测试时间:单元测试→集成测试→系统测试→交付测试
内容:
集成:各个单元模块之间的接口
系统:整个系统的功能和性能
角度:
集成:偏向于技术角度的验证
系统:偏向于业务角度的验证
验收测试:
也叫交付测试。针对用户需求业务流程的正式的测试,确定系统是否满足验收标准,由用户或其他授权机构决定是否接受系统。
1用户验收测试
2运行验收测试
3合同和规范验收测试
4alpha测试
5beta测试
查看全部 -
早期含义:{1 软件测试时对程序能够按预期运行建立起一种信心。
2 测试是为了发现错误而执行程序的过程
3使用人工或自动的手段来运行或测量软件系统的过程}
4使用人工或自动的手段来运行或测量软件系统的过程,以检验软件系统是否满足规定的要求,并找出与预期结果之间的差异。---IEEE定义
对象
需求;软件概要设计;详细设计;运行环境;源代码;可运行程序。
五大要素和目标:质量;人员;资源;流程;技术和测试覆盖率;测试效率。
原则:一:测试显示缺陷的存在,但不能证明系统不存在缺陷。(一开始就假设程序中隐藏错误,然后测试程序,发现尽可能多的错误,这种假设几乎对所有的程序都成立。)
二:穷尽测试是不可能的,应设定及时终止的条件。(不可能一直测试下去,有时间限制。)
三:测试应尽早进行(并且贯穿整个项目的过程)
四:缺陷具有群集特性(一个模块中有越多的缺陷就说明有越多的缺陷没有被发现。)
五:测试的杀虫剂悖论(采用同样的方法去多次测试同样的模块就不能发现缺陷),测试方法需要不停地讨论和更新
六:测试的二八原则
七:测试活动依赖于测试背景
查看全部 -
单元测试:对软件中最小可测试单元进行检查和验证 原则:查看全部
-
最小单元测试;c语言,函数。Java,类查看全部
-
分类:单元测试,集成测试查看全部
-
文档测试:
用户手册
使用说明
用户帮助文档
要点:
完整性
正确性
一致性
易理解性
易浏览性
查看全部 -
软件测试的分类
按测试阶段来分类
1、单元测试
对软件中的最小可测试单元进行检查和验证。
单元测试的原则:
a、尽可能保证各个测试用例是相互独立的。
b、一般由代码的开发人员来实施,用以检验所开发的代码功能符合自己的设计要求。
单元测试的益处
1、能尽早发现缺陷
2、有利于重构
3、简化集成
4、文档
5、用单元测试的限制
1、不可能覆盖所有的执行路径,所以不可能保证捕捉所有路径的错误
2、每一行代码,一般需要3~5行测试代码才能完成单元测试。所以存在投入和产出的一个平衡。
单元测试框架
2、集成测试
定义:是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动
集成测试的主要实施方案
1、Bigbang:把大部分开发模块耦合起来,做集成测试
2、自顶向下
3、自底向上
4、核心系统集成:自核心部分开始测试由外扩散
5、高品集成(持续集成):同步于开发过程每隔一段时间对现有代码进行测试
集成测试&单元测试
1、测试的对象不同
2、测试的依据不同
3、测试的方法不同
3、系统测试
定义:是将经过集成测试的软件,作为计算机系统的一部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。
系统测试的关注点:
a、关注系统本身的使用
b、关注系统与其他相关系统间的连通
c、关注系统在不同使用压力下的表现
d、关注系统在真实使用环境下的表现
4、验收测试
查看全部 -
性能测试工具
LoadRunner
Silkperformer
Jmeter
WebLoad
Apache Bench
LoadUI
查看全部 -
性能指标:
并发用户数VU
每秒事物数TPS
响应时间
设备性能
查看全部 -
性能测试:
负载测试,压力测试,稳定性测试
查看全部 -
功能测试工具:
QTP winrunner
silkTest
rational robot
selenium
Watir
Sikuli
查看全部 -
功能测试:
针对的问题:功能错误或遗漏,界面问题,性能错误,数据访问错误,初始化及终止错误
查看全部 -
按测试类型来分类:
功能测试
性能测试
兼容性测试
部署测试
易用性测试
文档测试
本地化测试
安全测试
无障碍测试
可靠性测试
查看全部 -
基于脚本的测试:
ET探索式测试:
优点:更能激发测试人员的创造性和工作乐趣
增加了发现新的或较深入Bug的可能性
在较短的时间内找到更多的Bug以及对SUT作一个快速的评估
更加有效的实施自动化
更加适用于敏捷项目
缺点:
测试管理上有局限性,较难协调和控制
对于BUG的重复利用和重现上作用有限
只有在SUT已完全可用的前提下才更有用
ET的生产率很难定义
查看全部 -
敏捷测试:
强调从客户的角度进行测试
重点关注迭代测试新功能,不在强调测试阶段
尽早测试,不间断测试,具备条件即测试
强调持续反馈
查看全部
举报