首页 > 其他分享 >软件测试和调试(42 - 43题,共2分,论文)

软件测试和调试(42 - 43题,共2分,论文)

时间:2023-10-18 21:34:21浏览次数:43  
标签:集成 黑盒 测试 单元测试 42 43 模块 软件 软件测试

软件测试的目的是验证软件是否满足软件开发合同或项目开发计划、系统/子系统设计文档、 SRS、软件设计说明和软件产品说明等规定的软件质量要求。通过测试,发现软件缺陷,为软件产品的质量测量和评价提供依据。

软件测试分类:

按照开发阶段:单元测试/模块测试(对应详细设计阶段)、集成测试(对应的概要设计阶段)、确认测试(对应的需求分析阶段)、验收测试(用户需求)

1> 单元测试:单元测试又称模块测试,是对软件组成模块进行测试,其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。

测试阶段:编码后或编码前(TDD:test driven develop测试驱动开发)

测试对象:模块

测试方法:白盒测试

测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试

2> 集成测试:集成测试又称联合测试,是将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试,主要目的是检查软件单位之间的接口是否正确。

测试策略:非增量测试(一次性测试)、增量测试(包括自上而下、自下而上、三明治)

测试阶段:一般在单元测试之后进行

测试对象:模块间的接口

测试方法:黑盒测试和白盒测试相结合

测试内容:模块之间的数据传输、模块之间的功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系统的影响

3> 系统测试:系统测试是包括对功能、性能、软件所运行的软硬件环境进行测试,测试时大部分时间都用在系统测试执行阶段,包括回归测试和冒烟测试。(回归测试和冒烟测试不只是在系统测试阶段出现)

测试阶段:集成测试之后

测试对象:整个系统(软、硬件)

测试方法:黑盒测试

测试内容:功能、界面、可靠性、易用性、性能、兼容、安全性等

4> 回归测试:回归测试是指修改了旧代码之后,重新进行测试以确认修改有没有引起新的错误或导致其他代码产生错误,自动回归测试将大幅度降低系统测试、维护升级等阶段的成本。

5> 冒烟测试:冒烟测试就是对软件的核心基本功能进行测试,如果测试通过了,再进行后续的正式测试工作,这种测试方式耗时短速度快,测试对象是每一个新编译的需要正式测试的软件版本。

6> 验收测试:验收测试是部署软件之前的最后一个测试操作,也成为交付测试,测试人员是最终用户或需求方。(α测试和β测试)

测试阶段:系统测试通过后

测试对象:整个系统(软、硬件)

测试方法:黑盒测试

测试内容:配置复审、合法检查、软件文档检查、软件代码检查、软件功能和性能测试、测试内容交付。

按照测试实施组织:开发方测试、用户测试、第三方测试。

测试技术:白盒测试、黑盒测试、灰盒测试。

白盒测试:逻辑覆盖法(语句覆盖、判定覆盖、条件覆盖、条件判定覆盖、修正条件判定覆盖、条件组合覆盖、路径覆盖)、路径分析(环路数)、控制结构测试(条件测试、环路测试、Z路径覆盖)。

黑盒测试:等价类划分法、边界值分析法、错误推测法、因果图、判定表、状态迁移法、正交实验法、场景法。

按测试内容:符合性测试、验收测试、易用性测试、兼容性测试、可靠性测试、安全性测试、性能测试。

按执行被测试软件:静态测试(桌前检查、代码走查、代码审查)、动态测试(白盒测试、灰盒测试、黑盒测试)

按照是否有人工:人工测试、自动化测试

面向对象的测试方法:在OO系统中,每个类和对象封装了数据和操作这些数据的方法,而不是个体的模块,单元变成了封装的类,甚至是一个类族。因此,单元测试的意义发生了较大变化。

单元测试:包括方法层次的测试、类层次的测试和类树层次的测试。

方法层次的测试:等价类划分测试、组合功能测试(基于判定表的测试)、递归函数测试和多态消息测试等。

类层次的测试主要:不变式边界测试、模态类测试和非模态类测试。

类树层次的测试主要包括:多态服务测试和展平测试

集成测试OO系统的集成测试中,“集成”的含义也有了变化,模块集成变成了类的集成。

标签:集成,黑盒,测试,单元测试,42,43,模块,软件,软件测试
From: https://www.cnblogs.com/hhxzby/p/17773393.html

相关文章

  • CF543B Destroying Roads
    好经典的题,因为暑假前集训做过类似的思想的题所以知道怎么处理这题由于要求最多的删去的边数,则等价于求最少保留几条边,很显然留下的边一定是最短路上的但问题是如果两条路不相交的话很简单,可事实是两条路径可以重叠一些部分,这些边用了两次可能可以使答案变优关于这种图上两条路......
  • 软件测试全套教程,软件测试自学线路图
    ​ 一、简介本文从一个简单的登录接口测试入手,一步步调整优化接口调用姿势,然后简单讨论了一下接口测试框架的要点,最后介绍了一下我们目前正在使用的接口测试框架pithy。期望读者可以通过本文对接口自动化测试有一个大致的了解。二、引言为什么要做接口自动化测试?在当前......
  • LeetCode 42.接雨水
    直觉来看,每一个正方形可以容纳1个单位的水。按列来求,迭代求每一列可以容纳多少单位的水,累加。找出每一列左右两边最高的柱子,遍历时,不用关注第一列和最后一列。然后找到两边最高中较小的柱子,与当前列高度比较,大于,则可以装水,其他不可以。代码:classSolution{publicintt......
  • 软件测试|解决‘pip‘ 不是内部或外部命令,也不是可运行的程序或批处理文件
    前言很多Python初学者在使用Python时,会遇到环境的问题,比如无法使用pip命令安装第三方库的问题,如下图:当出现错误信息"'pip'不是内部或外部命令,也不是可运行的程序或批处理文件"时,这通常意味着在命令行中输入pip命令时,系统无法找到pip可执行文件的位置。本文将介绍解决这个问......
  • 软件测试|Linux基础教程:cp命令详解,复制文件或目录
    简介在Linux系统中,cp命令是一个非常常用且强大的命令,用于复制文件和目录。cp命令允许我们在不同目录之间复制文件或目录,并可以根据需求对文件复制的行为进行调整。在本文中,我们将详细解释cp命令的用法以及一些常见的选项。cp命令基本语法cp命令的基本语法如下:cp[选项]源文......
  • 软件测试|深入理解Python的encode()和decode()方法
    简介在Python中,字符串是不可变的序列对象,它由Unicode字符组成。当我们需要在字符串和字节之间进行转换时,Python提供了两个非常重要的方法:encode()和decode()。这两个方法允许我们在Unicode字符和字节之间进行相互转换,以便在处理文本和二进制数据时更加灵活。在本文中,我们将深入......
  • 软件测试|Python字符串拼接详细解析
    简介在Python编程中,字符串拼接是一个非常常见的操作,它允许我们将多个字符串连接成一个新的字符串。字符串拼接在处理文本和数据时非常有用,比如构建消息、生成文件路径、格式化输出等。在本文中,我们将深入探讨Python中字符串拼接的不同方法和技巧。方法一:连续书写拼接在Python......
  • 软件测试|深入理解SQL CROSS JOIN:交叉连接
    简介在SQL查询中,CROSSJOIN是一种用于从两个或多个表中获取所有可能组合的连接方式。它不依赖于任何关联条件,而是返回两个表中的每一行与另一个表中的每一行的所有组合。CROSSJOIN可以用于生成笛卡尔积,它在某些情况下非常有用,但在其他情况下可能会导致结果集过大。在本文中,我们......
  • 【前缀和优化 dp】CF1542E2 Abnormal Permutation Pairs (hard version) 题解
    CF1542E2首先时间复杂度肯定是\(\mathcal{O}(n^3)\)的。容易想到先枚举最长公共前缀,然后枚举\(p_{len+1}\)和\(q_{len+1}\),再枚举逆序对数进行统计。令\(f_{i,j}\)表示有\(j\)个逆序对的\(i\)阶排列的个数。易得转移\(f_{i,j}=\sum\limits_{k=\max(j-i+1,0)}^{j}f......
  • 软件测试用例设计方法-因果图法
    边界值法是等价类划分法的补充,所以,它们是一对搭档。那么,判定表法有没有它的搭档呢?答案是,有的。那就是本篇文章分享的用例设计方法——因果图法。定义因果图法:用来处理等价类划分和边界值考虑不到的情况,适用描述多种条件的组合,产生多个相应动作的测试方法;从程序规......