• 0
  • 0
分享
  • 软件测试基础知识点——软件测试圈
  • 北极 2021-04-28 10:00:07 字数 2293 阅读 2365 收藏 0

一、软件质量模型

  1. 功能性:能够满足明确和隐含要求的功能;

  2. 可靠性:能够处理异常情况,在错误中很快恢复;

  3. 易用性:易懂、易学、漂亮好看;

  4. 效率性:占用少量资源,提供适当的性能;

  5. 维护性:指产品可被修改的能力;

  6. 可移植性:指软件产品从一种环境迁移到另一种环境的能力。

二、软件测试分类

(1)是否覆盖源代码

  • 黑盒测试;

  • 白盒测试;

  • 灰盒测试。

(2)按照阶段划分

  • 单元测试:对软件中最小的可测单元进行的测试;

  • 集成测试:在单元测试的基础上,对多个单元组装后的产物进行测试;

  • 系统测试:在集成测试的基础上,把软件看作一个整体进行测试;

  • 验收测试:也叫交付测试,以最终用户的角度确认软件是否符合预期。

(3)是否运行

  • 静态测试;

  • 动态测试。

(4)是否自动化

  • 手工测试;

  • 自动化测试。

(5)更多分类

  • 冒烟测试:对基本功能,主要功能进行测试,避免测试资源的浪费;

  • 回归测试:对BUG或者测试用例进行回归测试;

  • 随机测试:假设第一次接触软件进行随机测试,避免惯性思维;

  • 探索测试:同时做测试设计和测试执行,探索复杂场景,容易被忽略的场景。

三、软件开发常见模型

(1)瀑布模型

1.jpg

  • 过程:需求分析——概要设计——详细设计——编码——软件测试——软件维护;

  • 优点:阶段清晰;

  • 缺点:依赖于需求分析的成果;

  • 适用:需求明确的、大型项目。

(2)快速原型

2.jpg

  1. 过程:快速分析——构造——运行——客户评价;

  2. 优点:支持客户的参与,适应需求灵活的项目;

  3. 缺点:文档不完善,不满足大型项目的需求;

  4. 适用:需求灵活的中小型项目。

(3)敏捷开发模型

3.jpg

在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

优点:敏捷开发的高适应性,以人为本的特性、更加的灵活并且更加充分的利用了每个开发者的优势,调动了 每个人的工作热情。

缺点:由于其项目周期很长,所以很难保证开发的人员不更换,而没有文档就会造成在交接的过程中出现很大 的困难。

四、软件测试模型

(1)V模型

4.jpg

  • 过程:开发半个V,测试半个V;

  • 优点:包含了底层测试和高层测试;

  • 缺点:测试介入时间晚

(2)W模型

5.jpg

  • 过程:开发一个V,测试一个V;

  • 优点:测试介入时间早;

  • 缺点:步骤复杂,对人员要求高。

五、软件缺陷

(1)软件缺陷的定义和标准

定义:软件或程序中存在的各种问题和错误

标准:

  • 未达到需求规格说明书标明的功能;

  • 出现了需求指明不会出现的错误;

  • 超出需求的范围;

  • 未到达需求虽未指明,但应该达到的目标;

  • 软件难以理解,不易使用,运行速度慢。

(2)缺陷报告的关键因素

6.jpg

黑盒测试和白盒测试

黑盒测试:

不考虑程序的内部逻辑结构,着眼于程序外部结构,针对软件界面和软件功能进行测试;

测试方法:等价类划分,边界值分析,因果图法,错误推测法,场景法,正交实验设计法,功能图分析法,判定表驱动分析法。

  • 等价类划分:把所有可能的输入数据,划分成若干子集,然后从每一子集中选取少数和具有代表性的数据作为测试用例;

  • 分为有效等价类和无效等价类;

  • 边界值分析:对输入或者输出的边界值进行测试,应当选取正好等于、刚刚大于、刚刚小于边界的值作为测试数据,而不是选取等价类中典型值或任意值作为测试数据;

  • 错误推测法:根据经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例;

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

  • 判定表驱动分析法:判定表是分析和表达多逻辑条件下执行不同操作的情况工具,优点是:能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏;

  • 正交实验设计方法:利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法.类似的方法有:聚类分析方法,因子方法方法等。

  • 功能图分析方法:

  • 场景设计方法:现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。

白盒测试:

  • 白盒测试又称透明盒测试、逻辑驱动测试;

  • 是测试被测单元内部如何工作的一种测试方法;

  • 根据程序内部的逻辑结构及相关的信息来选择和测试用例,对程序的逻辑结构进行测试;

  • 可覆盖全部代码、分支、条件和路径等。

测试方法:

  1. 语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖;

  2. 语句覆盖:使程序中可执行的语句至少执行一次;

  3. 判定覆盖:使得程序中每个判断的取真分支和取假分支至少经历一次;

  4. 条件覆盖:要使每个判定中每个条件的可能值至少满足一次;

  5. 判定-条件覆盖:使得判断条件中的所有条件可能至少执行一次取值。同时,所有判断的可能结果至少执行一次;

  6. 条件组合覆盖:使得所有可能的条件取值组合至少执行一次;

  7. 路径覆盖:设计所有的测试用例,来覆盖程序中的所有可能的执行路径。


作者:Mecury_

原文链接:https://blog.csdn.net/qq_35006802/article/details/115358089


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   使用背景概述:  在客户端项目中,测试同学经常需要使用VMWare虚拟机进行兼容性测试。随着操作系统从Win7到Win10的普及,笔者发现Win10自带的虚拟机Hyper-V就很好用。比如需要分别测试Win7、Win8、Win10等系统上的客户端系统,在虚拟机Hyper-V单独安装这些系统,这样既不影响本机系统软件使用,又可以完成兼容性测试工作。  对于从事Selenium分布式测试的同学也可以参考下:  1、Hyper-V安装系统要求  根据官网提示:  1).Intel或者AMD64位处理器  2).Windows Server 2008 R2及以上(服务器操作系统);  Window...
            11 11 2561
            分享
          • 在测试工作中,我们应该实事求是,接到需求后然后按如下几个方面来设计测试用例:1、分别设计不同类别的测试用例测试用例需要先区分类别,然后再进行设计。如冒烟测试用例,主要用来支持开发自测试,以及开发提测后,测试人员用来验证提测质量。冒烟测试用例主要覆盖需求核心业务流程,如果测试用例通过不过,会影响测试工作的正常开展。全功能测试用例,覆盖整个需求的测试用例,用来在测试过程中执行用例,来验证开发的代码是否符合产品的需求,发现可能存在的问题。不同类别的测试用例有不同的用途,需要分别来对待的。2、从用户角度出发,编写测试用例虽然我们了解到很多设计测试用例的方法,可是在实际工作中不能完全按照这些方法来实施的...
            0 0 810
            分享
          • 前言Postman和Apifox有什么区别?他们之间分别有什么优势,感兴趣的同学可以继续往下看。 不吹不黑,只列功能,纯客观比对。一.功能列表对比(一)接口设计与文档管理功能1.导入功能对比Apifox的导入功能除了支持OpenApi之外,还支持yapi,RAP2,postman等国内用得比较多的接口文档导入,而Postman支持的格式相对较少。2.在线分享功能对比Postman的在线分享功能,付费版支持“只读”功能,Apifox分享功能支持选择过期日期、设置密码,选择分享内容的范围,选择环境等功能。3.编辑接口文档对比接口文档既可以纯粹的MD格式文档对接口做整体说明,也可以在单个接口内部对单...
            0 0 2269
            分享
          •   继猎豹移动CEO傅盛与金沙江创投董事总经理朱啸虎“互怼”后,朱啸虎又发了朋友圈解释了一番。  他表示,昨天的对话造成很多误解,其实我们应该是国内垂直AIGC真正出手最多的早期投资人(这句话在对话中被故意删掉了)。  其核心观点为不要迷信通用大模型,“明年3.5就成commodity,3年后4也将是commodity!对于大部分创业者,场景优先,数据为王!”朱啸虎称。作者:佚名原文链接:新浪科技_新浪网(sina.com.cn)
            0 0 948
            分享
          • 导出json文件方便使用jenkins集成环境管理,导出python的话方便在linux系统下运行脚本。1、postman导出json文件:目前postman支持V1(逐渐弃用),V2,V2.1(推荐使用),只有客户端支持导出功能,chrome插件不支持选择要导出的版本号即可2、postman导出Python脚本生成后复制代码新建.py文件即可作者:笑笑就好90原文链接:https://www.cnblogs.com/xulinmei/p/10719231.html
            0 0 676
            分享
      • 51testing软件测试圈微信