软件测试基础

1.软件测试阶段:

单元测试:

对软件中的最小测试单元进行检查和验证

原则:1.测试单元是独立的2.由开发人员来进行

益处:1.尽早发现缺陷2.有利于重构3.简化集成4.文档5.用于设计

限制:1.不可能发现所有的代码错误2.测试投入产出比不高

集成测试:

在单元测试的基础上,测试在将所有的软件单元按照系统规格说明组装成模块、子系统或系统的过程中各部分工作是否符合设计

分为:1.Big Bang(一次性集成)2 .自顶向下3.自底向上4.核心系统集成5.高频集成

系统测试:

在集成测试的基础上,作为计算机系统的一部分,与系统中的其他部分结合起来,在实际运行环境下对计算机系统进行一系列严格有效的测试,以发现软件的潜在问题,保证系统的运行

关注点:1.关注系统本身的使用2.关注系统与其他系统间的连接3.关注系统在不同压力下的表现4.关注系统在真实环境下的表现

验收测试:

也称交付测试,针对用户需求、业务流程的正式测试,确认系统是否符合验收标准,由用户、客户或者其他授权机构是否接受系统。

分为:1.用户验收测试2.运行验收测试3.合同和规范验收测试4.alpha测试(开发者环境)5.Beta测试(用户环境)

2.软件测试手段:

黑盒测试:

优点:1.容易实施,不关注内部实现2.更贴合用户使用角度

缺点:1.测试覆盖率较低2.针对黑盒的自动化测试,复用率较低,维护成本较高

等价类、边界值、错误推测法、因果图法、正交试验分析法、状态迁移图法、流程分析法

白盒测试:

分为结构化测试和透明盒测试

优点:1.可以理解实现原理2.覆盖路径和分支3.可以发现代码逻辑错误4.对代码测试比较彻底

缺点:1.成本高2.无法检测遗漏的代码和数据敏感性的错误3.不能直接验证需求的正确性

代码检测法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法

其中逻辑覆盖法分为:语句覆盖、条件覆盖、条件组合覆盖、分支覆盖、路径覆盖、条件和判定组合覆盖

灰盒测试:

既要关注输出对于输入的正确性,也要关注内部表现

静态测试:

无需运行代码,通过评审代码或者相关文档,度量程序静态复杂度,检查软件是否符合编程标准,可以通过人工或者自动化工具方式来测试
互审、走查、会议

动态测试:

通过运行代码,检查预期结果和运行结果的差异,并分析运行效率、正确性和健壮性等

手工测试:

由专门的测试人员从用户视角来验证软件是否符合设计要求,针对深度的测试和强调主观判断的测试
众包测试、探索式测试

自动化测试:

使用测试工具控制测试的自动化执行以及对预期和结果进行自动检查
主要应用于单元测试、接口测试、性能测试等


3.软件测试模式

瀑布模型:

项目计划-》需求分析-》软件设计-》程序开发-》软件测试-》集成维护

V模型:


W模型:


X模型:


H模型:



4.软件测试类型

功能测试

性能测试:负载测试、压力测试、稳定性测试

安全测试

兼容性测试:软件本身的兼容性、不同平台下的兼容性、软件对运行设备的兼容性、软件的互操作性

文档测试

易用性测试

可靠性测试:软件可靠性、硬件可靠性

部署测试

本地化测试

无障碍测试

回归测试

monkey测试

冒烟测试

A/B测试

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值