软件测试的定义及分类

一.软件的定义

  • 软件分为:系统软件和应用软件的

系统软件——为了计算机能正常、高效工作所配备的各种管理,监控维护系统的程序及有关资料,如:操作系统,各种语言解释编译器,各种数据管理系统。

应用软件—qq,微信,360(备注:浏览器是应用程序

二.软件测试的定义

  • IEEE 标准的定义:使用人工或自动的手段来运行或测定某个系统的过程,其目的在于检验;它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。
  • 经典的定义:测试是为了发现错误而执行程序的过程。
  • 简单理解:测试为了检查程序中的错误,且看是否符合需求

三.软件的原则

  • 尽早介入
  • 穷尽测试是不可能的
  • 缺陷具有集群性(二八原则)
  • 杀虫剂悖论
  • Absence of errors 谬误(系统的发布,不能取决于是否存在缺陷,而是取决于是否满足客户的需求和期望)
  • 注意:所有测试均需要追溯到用户需求;避免程序员自测;保存好测试过程中用到的所有资料

四.软件测试分类

  • 按执行阶段划分

单元测试,集成测试,系统测试,验收测试(正式验收,Alpha测试,Beta测试)

  • 按测试技术划分

白盒测试,黑盒测试,灰盒测试

  • 按被测试对象是否运行划分

静态测试(代码走读,文档检查,界面检查),动态测试

  • 按测试的手段划分

手工测试,自动化测试

  • 按测试包含内容划分

功能测试,界面测试,安全测试,兼容性测试,易用性测试,性能测试,负载测试,压力测试,恢复测试

  • 其他测试

回归测试,冒烟测试,自由测试

注:单元测试—软件的最小单元程序模块测试;冒烟测试—对系统整体进行重点功能流程测试

.扩展c/s和b/s架构

c/s:即Client/Server(客户机/服务器)结构 eg:淘宝App

b/s:B/S结构,即Browser/Server(浏览器/服务器)结构 eg:淘宝网站

猜你喜欢

转载自www.cnblogs.com/syh-yang/p/10723612.html