软件测试的分类

按照测试层次划分

  1. 底层测试:单元测试
  2. 接口层次:集成测试,完成系统内单元之间接口和单元集成为一个完整系统的测试
  3. 系统层次:系统测试
  4. 用户层次:验收测试,验证是否是用户真正所需要的产品特性,验收测试关注用户环境、用户数据,而且用户也参与到测试过程中

按照测试的对象划分

  1. 单元测试:包括组件测试、模块测试等
  2. 程序测试
  3. 系统测试
  4. 文档测试:包括需求文档、设计文档、用户手册等
  5. Web应用测试、客户端测试
  6. 数据库测试、服务器测试

按照测试阶段划分

对于传统的测试流程,一般分为:需求评审、单元测试、集成测试、系统测试、验收测试、α测试、β测试等阶段

对于敏捷测试流程,一般分为:需求分析、迭代测试计划、持续的单元和系统测试、验收测试

不同的测试流程可能会有不一样的结果


按照测试目的划分

功能测试:也称正确性测试,验证每个功能是否按照事先定义的要求那样工作

性能测试:测试系统在不同负载条件下的系统具体的性能指标

安全性测试:测试系统在应对非授权的内部/外部访问、有意攻击时的系统防护能力

兼容性测试:测试在系统不同运行环境(网络、硬件、第三方软件等)下的实际表现

可靠性测试:检验系统是否能保持长期稳定、正常的运行,如确定系统平均故障间隔时间(MTBF)。包括:强壮性测试和异常处理测试

压力测试:也称负载测试,用来检查系统在不同负载(如数据量、并发用户、连接数等)条件下的系统运行情况,特别是高负载、极限负载下的系统运行情况,以发现系统不稳定,系统性能瓶颈、内存泄漏、CPU使用率过高等问题

灾难恢复性测试:在系统崩溃、硬件故障或其它灾难发生之后重新恢复系统和数据的能力测试

回归测试:为保证软件中的新变化(新增的代码、代码修改等)不会对原有功能的正常使用有影响而进行的测试。即,在满足用户需求的原有功能不应因代码变化而出现任何新的问题

安装测试:在一个真实的或近似的用户环境中,验证系统是否能按照安装说明书成功地完成系统地安装,其中要考虑环境的不同设置或配置、安装文档的准确性等


按照被测软件是否被执行

静态测试:包括对软件产品的需求和设计规格说明书、对程序代码的审查以及静态分析等

动态测试:在系统运行时进行测试。通过真正运行程序发现错误,通过观察代码运行过程,来获取系统行为、变量实时结果、内存、堆栈、线程以及测试覆盖度等各方面的信息,来判断系统是否存在问题,或者通过有效的测试用例,对应的输入输出关系分析被测程序的运行情况,来发现缺陷


根据代码可见度划分

白盒测试也称结构化测试、逻辑驱动测试。可应用在程序的单元测试,覆盖程序的结构特性或逻辑路径,同时可扩展到控制流路径、业务流程路径和数据流路径等的覆盖

白盒测试的基本原则

(1)在执行测试时,先考虑各个分支被覆盖

(2)再考虑完成所有逻辑条件分别为真值(True)和假值(False)的测试

(3)若有更高的质量要求,测试对象流程图中所有独立路径至少被运行一次

(4)检查内部数据结构,注意上下文的影响,以确保其测试的有效性

黑盒测试数据驱动测试,更关注输出。不关注软件内部结构,着眼于程序外部用户界面,关注软件的输入和输出,关注用户需求,直接获得用户体验,从用户角度或扮演用户角色来验证软件功能,验证产品每个功能能否正常使用,评估软件的使用质量。

黑盒测试方法常发现以下缺陷:

(1)有错误的功能或遗漏了某项功能

(2)不能正确地接受输入数据、输出数据错误的结果

(3)功能操作逻辑不合理

(4)界面出错、不美观

(5)安装过程中出现问题,安装步骤不清晰、不够灵活

(6)系统初始化问题等


按照是否由软件工具完成测试划分

  • 手工测试
  • 自动化测试:是通过计算机运行测试工具和测试脚本自动完成软件测试工作的方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
beta软件测试是一种软件测试方法,通常在软件开发的后期阶段进行。该测试主要目的是让最终用户在实际环境中使用软件,并提供反馈和建议。基于实际用户的使用经验,beta测试可以帮助开发团队发现潜在的问题和改进软件。 根据参与测试的用户类型的不同,beta软件测试可以分为两种分类: 1. 开放式beta测试:在这种测试中,任何有兴趣的用户都可以参与。开放式beta测试通常通过网络或软件开发公司的网站进行招募。用户可以自由下载和安装软件,并根据使用体验提供反馈。这种测试方法具有参与用户广泛、获取反馈多样的优点,但也可能因为参与人数众多而导致反馈信息的管理和整理相对困难。 2. 闭合式beta测试:这种测试方法是通过邀请特定用户群体参与的,通常是一些经过筛选的志愿者。软件开发公司会从特定的用户群体中选取一些具有特定需求和特征的用户,以获得更加具体和有针对性的反馈。闭合式beta测试通常具有更高的测试质量和更好的参与度,但由于参与用户数量较少,可能无法覆盖所有潜在的使用情况。 总的来说,beta软件测试是一项重要的测试活动,能够有效地发现并解决软件问题。通过开放式和闭合式两种分类方法,测试人员可以获得不同类型用户的反馈,从而提高软件的稳定性和用户体验,为软件发布做好准备。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值