精华内容
下载资源
问答
  • 测试理论

    2021-03-20 08:23:40
    软件测试理论一. 软件开发过程模型1. 瀑布模型2. 快速原型模型3. 螺旋模型二. 软件测试模型1. V模型2. W模型3. H模型三. 软件测试分类四. 测试用例设计1. 测试用例的定义2. 测试用例8要素3. 测试用例模板4. 测试用例...

    一. 软件开发过程模型

    1. 瀑布模型

    瀑布模型图示:
    需求分析 -》概要设计 -》详细设计 -》编码 -》软件测试 -》软件维护
    在这里插入图片描述

    2. 快速原型模型

    快速原型模型图示:
    快速分析 -》需求说明 -》构造原型 -》原型 -》运行原型 -》评价原型 -》修改意见
    在这里插入图片描述

    3. 螺旋模型

    螺旋模型图示:
    在这里插入图片描述
    在这里插入图片描述

    二. 软件测试模型

    1. V模型

    • V模型推出之前,人们通常把测试过程作为在需求分析、概要设计、详细设计、编码全部完成之后的一个阶段,V模型在这个时候推出,就是为了改变之前行业的普遍认识。
    • V模型本身是软件开发中瀑布模型的变种,它反映了测试活动与分析和设计的关系。
    • V模型标明了测试过程中本身存在的不同阶段,从左到右,描述了开发过程和测试过程间的阶段对应关系。

    在这里插入图片描述
    V模型每个阶段的含义:
    在这里插入图片描述在这里插入图片描述

    2. W模型

    • W模型由Evolutif公司提出:开发一个V,测试一个V,组合的W模型;
    • 测试伴随着整个软件开发周期,并且测试的对象不仅仅是程序,需求和设计同样要测试。
      W模型图示:
      在这里插入图片描述
      在这里插入图片描述

    3. H模型

    H模型诞背景:

    • 人们发现虽然软件开发中需求、设计、编码等活动被分阶段执行、但是实践中,他们并不是完全串行的,它们之间更多时候是交叉进行的,更多的是迭代执行
    • 为了解决上面的问题,有专家提出了H模型,它将测试活动完全独立出来,形成一个完全独立的流程,同时将测试准备和测试执行也清晰表现出来
      H模型图示:
      在这里插入图片描述
      测试流程如下:
    1. 测试准备:所有测试执行活动的准备;判断是否到测试就绪点;
    2. 测试就绪点:测试准入准则,即是否可以开始执行测试的条件;
    3. 测试执行:具体的执行测试的程序。
      在这里插入图片描述

    三. 软件测试分类

    在这里插入图片描述
    黑盒测试的局限:

    • 不能测试程序内部的特定部位
    • 程序未执行的代码无法被发现
    • 不可能做到穷举测试

    黑盒测试可以发现的错误:

    • 功能不对或功能遗漏。
    • 界面错误。
    • 数据库访问或者处理错误。
    • 性能问题。

    随机测试:

    • 随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试用例没有覆盖到的部分,另外们对于软件更新和新增加的功能要重点测试,重点对一些特殊情况点,特殊的使用环境、并发性、进行检查。尤其对以前测试发现的重大Bug,进行再次测试,可以结合回归测试一起进行。

    探索性测试:

    • 探索性测试是一种测试思维技术,它没有很多实际的测试方法、技术和工具,但是却是所有测试人员都应该掌握的一种测试思维方式。探索性。测试强调测试人员的主观能动性,抛弃繁杂的测试计划和测试用例设计过程,强调在碰到问题时及时改变测试策略
    • 探索性测试强调测试设计和测试执行的同时性,这是相对于传统软件测试过程中严格的“先设计,后执行”来说的,测试人员通过测试来不断学习被测系统,同时把学习到的关于软件系统的更多信息通过综合的整理和分析,创造出更多的关于测试的主意。

    验收测试

    软件正式版本推出之前的几个版本, 需要有人测试一下, 看看是不是有问题。在开发该软件的公司内部由该公司
    内部人员测试的称为: Alpha 测试, Alpha 测试主要看有没有功能缺失或系统错误, Alpha 测试完后一般不会有大
    问题了。然后把软件拿给用户测试,称为: beta 测试, 主要是看用户对软件外观、使用方便等的反应。这么多的
    测试版一方面为了最终产品尽可能地满足用户的需要, 另一方面也尽量减少了软件中的bug。然后做过一些修
    改, 成为正式发布的候选版本时, 叫做gamma( 现在叫做RC - Release Candidate) 。
    简单来说,阿尔法测试主要是测试人员在开发环境下的测试,贝塔测试是在实际环境中的测试,或者公司内部
    人员在模拟真实环境中的测试
    

    α测试

    1、Alpha 是内测版本,即现在所说的CB。
    2、此版本表示该软件仅仅是一个初步完成品, 通常只在软件开发者内部交流, 也有很少一部分发布给专业测试人员。
    3、一般而言, 该版本软件的bug 较多, 普通用户最好不要安装。
    

    β测试

    1、Beta是公测版本,是对所有用户开放的测试版本。
    2、该版本相对于α 版已有了很大的改进,消除了严重的错误, 但还是存在着一些缺陷,需要经过大规模的发布测试来进一步消除。
    3、这一版本通常由软件公司免费发布, 用户可从相关的站点下载。
    4、通过一些专业爱好者的测试, 将结果反馈给开发者, 开发者们再进行有针对性的修改。
    5、该版本也不适合一般用户安装。
    

    γ测试

    Gamma版本,指的是软件版本正式发行的候选版。该版本已经相当成熟了, 与即将发行的正式版相差无几, 成为正式发布的候选版本。
    

    四. 测试用例设计

    1. 测试用例的定义

    • 测试用例(Test Case)是为特定的目的而设计的一组测试输入、执行条件和预期的结果,以便测试是否满足某个特定需求。通过大量的测试用例来检验软件的运行效果,它是指导测试工作的依据

    2. 测试用例8要素

    • 软件测试用例的基本要素包括用例编号、用例标题、测试项目、用例级别、预置条件、测试输入、执行步骤、预期结果。

    3. 测试用例模板

    在这里插入图片描述

    4. 测试用例设计方法

    - 等价类划分法

    • 定义:输入具有代表性的数据子集
    • 有效等价类:满足需求的
    • 无效等价类:不满足需求的
    • 设计步骤:
      1、明确需求
      2、确定有效和无效等价类
      3、编写测试用例:对于所有的无效等价类,测试用例要尽量全覆盖,一条测试用例尽可能的覆盖所有有效等价类
    • 适用范围
      只要存在输入的功能
    • 案例
      QQ账号:6—10位自然数
      有效等价类:长度在6-10位之间的自然数
      无效等价类:长度小于6、长度大于10、负数、小数、英文字母、中文、空格、特殊字符

    - 边界值分析法

    背景:有效数据和无效数据的分界点,往往作为程序员编写程序的判断点,是程序员容易犯错误的地方, 也是测试
    人员重点测试的内容。
    
    • 边界是指对于输入等价类和输出等价类而言,稍高于其边界及稍低于其边界值的一些特定情况
    • 确定边界情况(输入或输出等价类的边界)
    • 选取正好等于、刚刚好大于或刚刚好小于边界值作为测试数据(上点、离点、内点)

    适用范围

    1. 有输入参数,且输入类型或范围长度有边界时
    2. 和等价类一起使用

    - 判定表法

    • 判定表法表示的是有多个输入,和多个输出,而且输入与输入之间有相互的组合关系、输入和输出之间有相互的制约和依赖关系
      在这里插入图片描述
      在这里插入图片描述
      适用场景:

        1、适用于有多个输入,多个输出的条件
        2、输入与输出之间有约束和因果关系的题目
      

    - 因果图法

    因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适用于检查程序输入条件的各种组合情况
    

    在这里插入图片描述
    因果图法的基本步骤
    1、标识输入和输出

    • 注意:输入只涉及2种取值的,可以只作为一个标识出来,如果输入项涉及多种取值的,每个取值需要作为一个输入标识出来
      2、画出因果图
      3、将因果图转化为判定表

    - 场景法

    • 用户角度:用户平时使用的不是单个功能,而是多个功能组合起来进行使用

    • 测试人员角度:平时测试的都是单个功能点进行测试,为了保证测试的全面性,也要从用户的角度出发也要对产品多个功能的组合进行测试。

        基本流:按照正确的业务流程来实现的一条操作路径(模拟正确的操作流程)
        备选流:导致程序出现错误的操作流程(模拟错误的操作流程)
      
    • 适用范围:

        1、多个功能间的组合测试
        2、在冒烟测试时主要采用场景法进行测试
      

    - 流程图法

    流程分析法:主要是针对测试场景类型属于流程测试场景的测试项下的测试子项进行设计。
    

    流程图法设计测试用例步骤

    第一步:详细了解需求;
    第二步:根据需求说明或界面原型,找出业务流程的各个页面以及各页面之间的流转关系;
    第三步:画出业务流程(产品经理使用Axure软件制作);
    第四步:写用例,覆盖所有的路径分支。
    

    流程图常用符号
    在这里插入图片描述

    案例:使用ATM机取款
    画图:使用ATM机取款正常流程
    在这里插入图片描述
    流程图
    在这里插入图片描述
    适用范围:
    1、多个功能间的组合测试
    2、在冒烟测试时主要采用场景法进行测试

    - 错误推错法

    • 错误推导法是指利用直觉和经验猜测出出错可能的类型,有针对性列举出程序中所有可能的错误和容易发生错误的情况,它是测试经验丰富的测试人员喜欢使用的一种测试用例设计方法
    • 使用场景:
      1、项目紧任务急、时间不够,这时就不要按部就班的测试了。
      2、根据之前项目的经验,找到之前出错过的类似模块进行重点测试。
      3、所有正常测试结束后,通过错误推导法再测试一些出过问题的模块。

    - 正交排列法

    • 正交排列法就是能够使用最小的测试过程集合获得最大的测试覆盖率。
    • 适用范围:
      当可能的输入数据或者输入数据的组合数量很大时,由于不可能为每个输入组合都创建测试用例,可以采用这种犯法
    • 正交表的概念:
      1、一种特制的表,一般的正交表标记为:Ln(mk)
      2、n表示行数,也就是需要测试组合的次数
      3、k是表的列数,表示控件的个数(因素的个数,或是因子个数)
      4、m是每个控件包含的取值个数(各因素的水平数,即各因素的状态数)
    • 查找正交表
      http://support.sas.com/techsup/technote/ts723_Designs.txt
    • 特殊情况
      1、状态数相同,因子数不相同:没有符合的正交表可以采用相同的状态数和大于该因子数的正交表,删除多出来的因素
      2、因子数相同,状态数不相同:选择状态数出现最多的,空出来的状态全部设为某一状态
      3、状态数不同,因子数也不同:优先选择最大因子数,然后选择最大状态数,多出来的结合1和2处理办法

    - 测试点的设计思路

    在这里插入图片描述

    测试用例设计方法总结

    1. 如果测试一个功能中有输入功能,没有输入的组合情况,可以使用等价类划分法
    2. 如果测试一个功能中有输入功能,且输入类型或者范围长度有边界时,可以使用边界法。
    3. 如果测试一个产品,有多个输入,多个输出,而且输入与输入之间有相互组合关系,输入和输出之间有相互制约和依赖关系可以使用因果图和判定表法
    4. 对于参数配置类的软件,需要考虑参数之间相互组合的情况,用最少的测试用例获得最大的测试覆盖率,可以使用正交实验法
    5. 对于多个功能之间的组合逻辑测试,可以使用场景法和流程图法
    6. 采用错误推断发再追加测试用例——依靠测试工程师的经验和智慧

    五. 软件缺陷

    1.软件缺陷说明

    在这里插入图片描述

    2.软件缺陷的详细信息

    在这里插入图片描述

    - 缺陷的状态

    在这里插入图片描述

    - 缺陷的严重程度

    在这里插入图片描述

    - 缺陷的优先级

    在这里插入图片描述

    3.缺陷的分类

    在这里插入图片描述

    4.缺陷报告模板

    在这里插入图片描述

    5.软件缺陷修复相关

    开发人员拒绝修改的缺陷:
    	 程序员无法重现或者现象难以捕捉 --- 缺陷详细描述
    	 没有明确的报告以说明重现缺陷的步骤---缺陷报告 
    	 程序员无法读懂的缺陷报告 ---标题
    	 由不受信任的测试人员提出---缺陷提交人 
    不是所有缺陷都会修改:
    	 市场的压力使得产品最终发行有时间限制
    	 测试人员错误理解或者不正确操作引出的缺陷(FAQ)
    	 错误的修改影响的模块较多,带来的风险较大(遗留)
    	 修改性价比太低
    	 缺陷报告中提出的问题很难重现
    

    6.缺陷报告的注意事项

    1、尽量确保缺陷可以重现
    	如果提交的缺陷无法重现,会影响开发人员的工作效率。
    2、简洁、准确、完整
    	测试人员在提交缺陷报告时,要站在开发人员的角度上思考问题,要确保开发人员能迅速定位问题,而
    3、一个缺陷一个报告
    	不提倡多个缺陷一个报告原因有以下两点:
    		1、不便于分配
    		  比如缺陷报告有2个缺陷,分别属于不同的开发人员,到底该分配给谁呢?
    	    2、不便于验证
    		  比如一个缺陷报告里面有2个缺陷,缺陷1已经解决,缺陷2还没有解决,那么这个缺陷报告该不该关闭呢?
    

    7. 缺陷报告的重要性

    1、清晰准确的软件缺陷描述可以减少开发人员退回来的缺陷数量,可以节省开发人员和测试人员的时间。
    2、提高软件缺陷修复的速度,使项目组能够有效地工作。
    3、提高测试人员的可信任程度,可以得到开发人员对有效缺陷的及时响应。
    4、加强开发人员、测试人员和管理人员的协同工作,让他们更好的工作
    

    缺陷报告的注意事项

    8.缺陷跟踪

    1. 新提交的缺陷为新建状态,确认有效后为打开状态,经开发人员修改后,缺陷变为已修复(待验证)状态。此时就需要测试人员对缺陷进行回归测试,验证问题是否修复。
    2. 如果问题仍然存在,则测试人员将该缺陷的状态修改为重新打开;
    3. 如果问题已经修复,则测试人员将该缺陷的状态置为关闭状态(验证通过),同时添加回测说明如“该缺陷已解决”。
    4. 还有一种情况:开发人员认为缺陷在当前版本可以暂不修改,而考虑在后续版本中再做修正,缺陷的对应状态为延期。
    5. 对于这种情况,项目负责人应召集开发人员、测试人员和其他项目相关人员进行讨论,如果讨论结果为同意则延期,如果不同意,则重新打开缺陷。

    9.缺陷统计与数据分析

    缺陷数据分析关注的问题

    正在测试的软件哪个模块的问题最多
    测试人员中谁报告的软件缺陷最多
    各类缺陷所占的数量百分比分别是多少
    开发人员能及时修复软件缺陷吗
    开发人员一次正确修复缺陷的百分比是多少
    正在开发的软件能否在计划的时间内正常发布
    

    六.熟悉项目

    在这里插入图片描述

    展开全文
  • 测试理论测试

    2017-09-23 17:54:14
    测试理论测试
    测试理论测试
    
    展开全文
  • 软件测试理论

    2019-01-11 23:08:15
    软件测试理论篇 一、为什么软件要做软件测试 纵观历史事件说明软件测试的重要性 二、软件测试的概念 1、测试是为了发现错误而执行程序的过程 ; 2、在规定条件下,对程序进行操作,以发现错误,以软件质量进行评估 ; ...
  • 接口测试理论

    2018-09-06 11:01:57
    接口测试理论学习PPT,讲解了接口的定义,接口功能,性能开展的方法。文件密码:www.seulw.com
  • 测试理论及测试用例

    2020-12-16 20:28:28
    测试理论: 测试用例:

    测试理论:在这里插入图片描述
    在这里插入图片描述
    测试用例:
    在这里插入图片描述

    展开全文
  • 软件测试是一门需要不断学习补充新知识的学科,要想成为一名优秀的测试员就必须像成为一名武林高手一样不断研习武艺,博采众家之长,消化...  对待测试理论的辨证态度  测试理论对于一个测试员来讲是必不可少的,就像
  • 软件测试理论基础测试题一 2012 年 11 月 14 日 说明试题共分两大题目总分 150本试题请闭卷 一 选择题每题 1 分 下列文档中不是文档测试需要测试的内容是A A合同文档 B管理文档 C开发文档 D用户文档 下列逻辑覆盖...
  • 软件测试的基本方法和测试理论.doc
  • 测试理论总结.xmind

    2021-02-26 15:07:02
    这是一篇关于软件的测试理论知识的干货,很详细,是我在软件测试培训期间做的笔记。
  • 测试理论PPT.zip

    2019-08-13 20:01:59
    测试理论PPT及流程图,测试知识点总结及注意事项
  • 知识软件软件单元测试理论知识问答软件测试为什么需要单元测试?彻底测试:仅依靠系统测试会存在大量未覆盖的“死角”,单元测试可以实现代码级彻底测试,从根本上保证代码质量。成本最低:排错成本随时间推移和范围...
  • 软件测试理论基础.pdf

    2020-08-18 13:33:24
    软件测试理论基础.pdf
  • 测试理论相关

    测试理论相关

    测试理论相关

    展开全文
  • 测试理论笔记

    千次阅读 2019-03-18 15:04:07
    1.测试理论基础: 2.熟练使用数据库sql: 3.熟悉linux命令: 二、接口测试技术 接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要...
  • 软件测试理论.xmind

    2020-06-21 23:25:53
    这作者在学习完测试理论之后所画的思维导图,希望能帮到和作者一样刚刚跨入软件测试这行业的人,内容可能有些不足。望大家理解
  • 02软件测试理论.pdf

    2020-07-11 20:49:31
    02软件测试理论笔记: 什么是软件测试; 软件测试的目的: 软件测试的定义; 软件测试的原则; 软件质量模型等
  • 测试理论基础

    千次阅读 2020-09-24 15:06:14
    测试理论基础 1)最常见的软件开发模型有哪些? 1.瀑布模型: 是一种线型、顺序开发的软件开发模型,流水线:计划->需求分析->设计->编码->测试->运行和维护。阶段之间两两为输出输入,具有因果关系...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,939
精华内容 6,375
关键字:

测试理论