1.测试理论知识

一、软件和软件分类

什么是软件?

软件包括程序、数据、文档

软件的分类

  1. 按层次划分,分为系统软件,应用软件
  2. 按组织划分,分为商业软件,开源软件
  3. 按结构划分,分为单机软件,分布式软件

二、软件缺陷的定义

  1. 软件未实现产品说明书要求的功能
  2. 软件出现了产品说明书指明不应该出现的功能
  3. 软件实现了产品说明书未提到的功能
  4. 软件实现产品说明书虽未明确提及但应该实现的目标
  5. 软件难以理解、不易使用、运行缓慢或者(从测试的角度来看)最终用户会认为不好

三、软件测试的定义

  1. 正向思维:根据说明书去确认验证能否达到应有预期效果)
  2. 反向思维:判断是否出现说明书之外的问题
  3. ieee软件测试:在规定条件下,去观察记录结果以及检查现有状况和所需的是否有出入
  4. 广义软件测试:对软件的整体过程进行测试包括程序改以及相关文档

四、测试和调试的区别

  测试 调试
主体 测试人员 开发  
目标 找bug 将错误改正
方法 等价类、边界值... 程序和逻辑算法
思路 反向思维 正向思维

 

 

 

 

 五、软件生命周期模型

 1)瀑布模型

最早提出的软件开发过程模型

优点:可以按阶段进行检查 每阶段完成后只需关注后续阶段

缺点:1、各阶段完全固定,前阶段不完成,后阶段不开始。

2、将测试放在编码之后。没有体现出测试贯穿软件生命周期的原则。可以避免需求的问题一直延续到代码完成才发现,只有到后期才能看见开发成果,增加了开发风险 不适合用户需求的变化

 

2)螺旋模型

引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减小损失 适合大型的昂贵的系统级软件应用 

 

3)迭代模型

迭代模型 在原有稳定的软件上让功能做到更好,需重新进行需求分析、设计、实施和测试工作流程 优点:降低了在增量上的开支风险 降低了产品无法按照既定进度进入市场的风险 加快了整个开发工作的进度 迭代过程可以更好的适应需求的变化 

 

4)敏捷开发模型

 敏捷开发模型 敏捷宣言 快、灵活  

5)增量模型

增量模型 把软件分割成独立的模块,分批次的完成和交付 一般和迭代模型一起使用 软件增加新功能 优化功能 修复bug

6)快速原型模型

原型:一个可以模拟操作、简单运行的模型 典型的应用和工具:Axure制作原型

posted @ 2024-06-29 13:53  桃杳  阅读(13)  评论(0)    收藏  举报