软件测试基础
Anagnahs
这个作者很懒,什么都没留下…
展开
-
2-2 软件测试基础知识
第二讲 软件测试基础知识测试的含义首先是一项活动,在这项活动中某个系统或组成的部分将在特定的条件下运行,结果将被观察和记录,并对系统或组成部分进行评价。软件测试使用人工或自动化手段,来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别(IEEE)软件测试的根本目的发现\修改缺陷 满足需求,提高用户满意程度 优化软件品质一个好的测试用例在于发现了还未曾发现的错误;一次成功的测试则是发现了错误的测试。软件测试对象软件测试不等于程序...原创 2020-05-12 12:05:01 · 532 阅读 · 0 评论 -
3-3 边界值测试
1.边界值测试的基本原理:在被测对象的边界及边界附近设计测试用例。2.边界点:可能导致被测系统内部处理机制发生变化的点3.穷举法在每个边界点的邻域范围内取所有数据优势:边界及其邻域范围内所有数据均可测试到不足:邻域内的测试数据较多,导致的测试负担重4.典型值法在边界点a处选择a-1 ,a ,a+1 这三个值作为测试数据优势:测试数据包含了边界点本身以及最远离该...原创 2019-04-02 18:46:59 · 7880 阅读 · 0 评论 -
3-2 等价类测试
1.软件测试希望达到的目标:测试的完备性、测试的无冗余性2.等价类测试定义:依据需求对输入的范围进行细分,然后在分出的每一个区域内选取一个有代表性的测试数据开展测试3.确定被测对象:根据被测对象的特性,针对整体输入域或输出域进行等价划分4.有效等价类:对于SRS而言,合理、有意义的输入数据构成的集合,即被测对象能接受的数据,用于考查软件的正常工作能力无效等价类:对于SRS而言,不合...原创 2019-04-02 18:43:38 · 874 阅读 · 0 评论 -
3-1 黑盒测试技术
概述:1.对于黑盒测试的评价黑盒测试方法对测试人员的技术要求相对较低黑盒测试不需要了解程序实现的细节,测试团队与开发团队可以并行完成各自的任务局限性:测试结果的覆盖度不容易度量,测试的潜在风险较高2.无需看函数代码,只需了解函数接口和返回值3.测试方法的评价测试用例对被测对象的覆盖率: 高测试用例的冗余: 少测试用例的数量: 少测试用例对缺陷的定位...原创 2019-04-02 18:40:44 · 220 阅读 · 0 评论 -
10-1 测试过程管理
1.什么叫软件测试模型:软件测试过程(流程)2.为什么有软件测试模型:方便进行过程管理3.V模型V模型局限性:测试滞后、缺少静态测试、测试与开发文档难以一一对应。4.W模型静态测试和动态测试行为伴随整个开发阶段,并与开发行为对应,有助于早期发现缺陷、了解项目难度、评估测试风险,并加快项目进度,降低项目成本W模型局限性:1.将软件开发看成需求分析、设计...原创 2019-04-02 18:40:01 · 147 阅读 · 0 评论 -
2-1 软件测试背景
1.软件的测试的发展历程第一阶段:初始阶段(20世纪70年代以前)测试等同于“调试”1975年测试与“调试”区别开第二阶段:定义阶段(进入20世纪70年代)第三阶段:集成阶段(20世纪80年代初)1.软件开发方式逐渐由混乱无序的开发过程过渡到结构化的开发过程2.出现软件测试行业标准(IEEE/ANSI)和ISO国际标准3.1981年,Bill Hetze...原创 2019-04-02 18:37:12 · 1388 阅读 · 0 评论 -
1-1 软件测试核心概念
1.软件=程序(P)+数据(库)(DB)+文档(D)+服务(S)2.软件测试的定义:软件测试是使用人工和自动手段来运行或测试某个系统的过程3.软件测试的目的:在于检验被测软件系统是否满足规定的需要,或是弄清楚被测系统的预期结果与实际结果之间的差别。4.软件测试的根本目的是:确保软件满足用户需求5.6.软件测试主要包括5个主要的步骤:计划测试、设计测试、实施测试、执行测...原创 2019-04-02 18:35:36 · 928 阅读 · 1 评论 -
8-1 集成测试
1.什么是集成测试(integration testing)集成测试就是在单元测试的基础上,将所有已通过单元测试的模块按照概要设计的要求组装为子系统或系统,并进行测试的过程,目的是确保各单元模块组合在一起后能够按既定意图协作运行,并确保增量的行为正确2.集成测试内容:将各个具有相互调用关系的模块组装起来时,检查穿越模块接口的数据是否会丢失判断各子功能组合起来能否达到预期要求的父功能...原创 2019-04-11 15:41:10 · 9522 阅读 · 0 评论 -
7-1 单元测试
1.什么是单元测试(Unit Testing)是指对软件中的最小可测试单元或基本组成单元进行检查和验证2.单元选取的原则对于面向过程的开发语言来说,单元常指一个函数或子过程对于面向对象的开发语言来说,单元一般指一个类图形化软件中,单元常指一个窗口或一个菜单单元测试的内容1.静态测试主要是通过走查、审查等会议方式,依据模块的详细设计,将代码与缺陷检查表进行对照,...原创 2019-04-10 16:36:12 · 417 阅读 · 0 评论 -
5-5 对于变量的测试
变量的3种缺陷定义:变量在使用前从未定义过(在编译时,会有提示,不需人工查找)变量被定义,但从未使用过变量在使用前,被多次定义对变量的测试相关概念1.定义节点:若被测变量v的值在某条包含该变量的语句n处发生改变,则称该语句是关于变量v的定义节点,记做DEF(v,n)输入语句、赋值语句(对该变量赋值)、循环控制语句(循环变量)是定义节点2.使用节点:若被测变量v的...原创 2019-04-10 16:35:14 · 751 阅读 · 0 评论 -
5-4 对于循环的测试
单个循环节点测试总结循环的初始化循环的迭代循环的终止循环节点嵌套测试分析考虑4种特殊组合:1)内层最小循环次数,外层最小循环次数组合,计算结果2)内层最小循环次数,外层最大循环次数,计算结果3)内层最大循环次数,外层最小循环次数,计算结果4)内层最大循环次数,外层最大循环次数,计算结果...原创 2019-04-10 16:34:43 · 1150 阅读 · 0 评论 -
5-3 基于路径的测试
1.独立路径什么是路径程序从起始执行到程序结束经过的所有节点和连接线什么是独立路径将全路径看做一个向量空间,从全路径集合中抽取一组线性无关的独立路径看做一组向量基2.测试的完备性:通过对独立路径的测试达到对所有路径的测试覆盖3.测试的无冗余性:每条路径都是独立的4.独立路径抽取根据程序源代码生成程序图计算程序图的环复杂度,确定独立路径集合的大小确定主...原创 2019-04-10 16:33:21 · 928 阅读 · 0 评论 -
5-2 基于判定的测试
1.语句覆盖void main(){float A,B,X;scanf(“%f%f%f”,&A,&B,&X);if((A>1)&&(B==0))X=X/A;if((A==2)||(X>1))X=X+1;printf(“%f”,X);}语句覆盖:是一个比较弱的测试标准,设计若干测试用例,使得程序中每个...翻译 2019-04-10 16:32:18 · 1115 阅读 · 0 评论 -
5-1 白盒测试技术及静态白盒测试
1.定义:对系统静态检查,这种检查通常不需要运行被测软件,而是直接对软件形式和结构进行分析2.白盒测试基本原理:3.白盒测试关注的对象:源代码:阅读源代码,检查代码规范性,并对照函数功能查找代码的逻辑缺陷、内存管理缺陷、数据定义和使用缺陷等程序结构:使用与程序设计相关的图表,找到程序设计的缺陷,或评价程序的执行效率4.白盒测试与黑盒测试比较黑盒测试:功能级别...原创 2019-04-10 16:27:48 · 2087 阅读 · 0 评论 -
3-8 状态迁移法
1.定义:是一种基于产品规格分析,对系统的每个状态及与状态相关的函数进行测试,通过不同的状态验证程序的逻辑流程2.任何一个系统,如果对同一个输入,根据不同的状态,可以得到不同的输出,就是一个有限状态系统3.有限状态机表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型4.有限状态机,可以用状态图,状态表,状态树表示以播放器程序为例,建立状态转换图状态图转换状...翻译 2019-04-10 16:25:07 · 3261 阅读 · 0 评论 -
3-7 基于场景测试
1.场景法概述—定义场景法:通过分析不同事件的触发顺序和处理结果,构建各个事件流,并基于这些事件的触发控制业务流程,形成多个不同场景,最终基于场景设计测试用例2.基本流是从系统的某个初始状态开始,经一系列状态变化后到达终止状态的过程中最主要的一个业务流程3.备选流是以基本流为基础,在经过基本流上每个判定节点(包括条件判定和循环判定)处满足不同的触发条件,而导致的其他事件流4.场景的...原创 2019-04-10 16:23:47 · 2287 阅读 · 0 评论 -
3-6 因果图测试
因果图:用图解的方法表示输入的各种组合关系,写出判定表,从而设计相应的测试用例因果图中用来表示4种因果关系的基本符号:或∨:原因1个出现,结果就出现,原因都不出现,结果就不出现且∧:原因都出现,结果才出现Ci:原因Ei:结果恒等:原因结果同时出现非~:原因出现,结果不出现;原因不出现,结果出现约束条件:E(互斥Exclusion):表示ab两原因不会同时成立...原创 2019-04-10 16:20:04 · 6096 阅读 · 0 评论 -
3-5 基于决策表的测试
1.定义:Decision table, 是一个用表格形式来整理逻辑关系的工具,由横向的条件(因)和动作(果)和纵向的规则(测试用例)组合而成2.条件桩(Condition Stub):列出了问题的所有条件(输入区)动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束(输出区)条件项(Condition Entry):列出针对它左列条件的取值。在...翻译 2019-04-10 16:15:13 · 2282 阅读 · 0 评论