软件测试基础

测试定义

​ 通过人工或者自动的手段,对被检测对象进行检测的活动,目的在于发现被测对象是否实现用户的需求,或者弄清楚实际结果与预期结构支架的差异

测试目的

  • 为了发现被测对象与用户需求间的差异
  • 为了发现并解决缺陷,增加人们对被测对象的质量信心
  • 通过测试活动,获取被测对象的质量信息,为决策提供数据依据
  • 通过测试,预防缺陷,从而降低项目或产品的风险

测试原则

  • 测试证明软件存在缺陷
  • 不可能执行穷尽测试
  • 测试应该尽早启动,尽早介入
  • 缺陷存在群集现象
  • 杀虫剂悖论
  • 不同的测试活动以来不同的测试背景
  • 不存在缺陷的谬论

系统测试对象与测试级别

测试对象

  • 软件源代码
  • 与软件源代码匹配的文档
  • 支撑软件元代啊的配置数据
  • 需求阶段 —> 需求文档 ----> 测试需求文档是否正确实现了用户的需求
  • 系统设计阶段 ----> 概要设计文档;详细设计文档;是否有设计或者逻辑上的错误
  • 编码阶段 ----> 测试源代码 ----> 发现编程上的错误
  • 系统测试阶段 ----> 被测对象是否满足用户需求

测试级别

​ 为了更加明确

组件单元测试

​ 针对被测系统最小的组成单元实施的测试活动(一般是类或者是函数,也可以是最小的功能单元)

集成测试

​ 主要针对组件、单元、组件之间的接口实施的测试活动,验证接口设计是否与设计相符。

​ 主要分为三种集成测试:函数间集成,模块间集成,子系统间集成

系统测试

​ 将集成测试的软件,部署在真实的用户环境下执行测试。和真实环境类似,

验收测试

​ 以用户为主的测试,验收组应该有项目组成员、用户代表组成。

​ 分为α测试(有用户在开发环境下执行的测试活动,开发者在测试人员(用户)身边,发现问题及时沟通解决),β测试(开发者不在被测人员(用户)身边,发现问题由专人统一收集,再由研发人员进行修改,在不受控环境下执行测试),UAT测试(一般商业用户验证系统可用性进行的测试)

系统测试类型

功能性测试

​ 在指定使用条件下,使用被测对象,验证其是否满足用户显性或者隐性需求

关注点: 是否有不正确或遗漏或多余的功能;是否满足系统显性或隐性需求;是否对输入输出做出了正确的响应,输出结果能否正确显示;

性能测试

​ 通过模拟被测对象运行业务压力或使用场景,验证被测对象是否满足预先设定的性能指标

​ **关注点:**验证系统是否具有宣称的能力;了解测试系统典型场景,并具有确定的性能目标;要求在真实环境下实施

安全性测试

​ 测试被测对象的安全保护机制系统不受非法侵入,能够接受正确授权的操作

兼容测试

​ 验证被测对象在不同的操作系统、硬件信息等环境下的运行情况

软件测试方法

黑盒测试

​ 不关注被测对象内部结构,仅从用户需求考虑,是否满足用户显性或隐性需求

白盒测试

​ 又称结构测试,逻辑驱动测试。与黑盒测试相反,

灰盒测试

​ 既关注被测对象的外部特性,又关注其内部设计

静态测试

​ 不执行被测对象源代码,不运行被测对象的测试方法。

动态测试

​ 运行被测对象,进行检测活动。

手工测试

​ 通过测试工程师试用,验证被测对象是否满足用户需求。

自动化测试

​ 通过自动化测试工具,或脚本语言自动化完成测试过程。

软件质量

​ 软件产品满足用户或规定显性需求或隐性需求的程度

主要点: 内部质量,过程质量,外部质量,使用质量

功能性

定义 软件在指定条件下使用时,满足用户明确和隐性需求的功能的能力

​ **适合性:**软件为指定的任务和用户目标提供一组合适功能的能力

准确性: 软件提供具有所需精确度的正确或相符的结果或效果的能力

互操作性: 软件与一个或更多的规定系统进行交互的能力

保密安全性:软件保护信息和数据的能力,以及未授权的人员或系统不能阅读或修改这些信息和数据,而不拒绝授权人员或系统对他们的访问。

​ **功能性依从性:**软件遵循与动能性相关的标准、约定或法规以及类似规定的能力。这些标准要考虑国际标准、国家标准、行业标准

可靠性

定义: 软件在指定条件下使用时,维持规定的性能级别的能力

成熟性: 软件为避免由软件中错误而导致失效的能力

​ **容错性:**在软件出现故障或者违反指定接口的情况下,软件维持规定的性能级别的能力

​ **易恢复性:**在失效发生的情况下,软件重建福鼎的性能级别并恢复受直接影响的数据的能力

​ **可靠性依从性:**软件遵循与可靠性相关的标准、约定或法规的能力

易用性

定义:在指定条件下使用时,软件被理解、学习、使用和吸引用户的能力

​ **易理解性:**软件使用户能理解软件是否合适,以及如何能将软件用于特定的任务和使用环境的能力

易学性:软件使用户能学习其应用的能力

易操作性:软件使用户能操作和控制它的能力

吸引性 :软件吸引用户的能力

易用性依从性 :软件遵循与易用性相关的标准、约定、风格指南或法规的能力。这些标准要考虑国际标准。。。

效率

​ 定义: 在规定条件下,相对于所用资源的数量,软件可提供适当性能的能力

​ 时间特性:在规定条件下,软件执行其功能时,提供适当的响应和处理时间以及吞吐率的能力,即完成用户的某个功能需要的响应时间

​ 资源利用特性: 在规定条件下,软件执行功能时,使用合适的资源数量和类别的能力

​ 效率依从性: 软件遵循与效率相关的标准或约定的能力

可移植性

​ 定义: 软件可被修改的能力,修改可能包括修正,改进或软件对环境、需求和功能规格说明变化的试验性。

​ 易分析性:软件诊断软件中的缺陷、失效原因或识别待修改部分的能力

​ 易改变性:软件是指定的修改可以被实现的能力

​ 稳定性: 软件避免由于软件修改而造成意外结果的能力

​ 易测试性: 软件使已修改软件能被确认的能力

​ 维护性依从性: 软件遵循与维护性相关的标准或约定的能力

可维护性

​ 定义:软件从一种环境迁移到另一种环境的能力

​ 适应性: 软件无须采用有别于为考虑该软件的目的而准备的活动或手段,就可能适应不同指定环境的能力

​ 已安装性:软件在指定环境中被安装的能力

​ 共存性:软件在公共环境中同与其分享公共资源的其他独立软件共存的能力

​ 易替换性:软件在同样环境下,替代另外一个相同用途的指定软件产品的能力

​ 可移植性依从性:软件遵循与可移植性相关的标准或约定的能力

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值