wolf0000 发表于 2021-11-2 16:28:21

软件测试

软件的分类:
        层次:系统软件,应用软件
    结构:单机,分布式
    组织:开源,商业
bug定义:
        所有不满足需求或超出需求的缺陷
软件的生命周期:
        需求分析→概要设计→详细设计→编码→测试→验证


软件开发模型:
        瀑布模型:最早提出的软件开发过程模型
    问题:①强调时间顺序严格执行,前阶段不完成,后续阶段不开始;
         ②将测试放在了编码之后,没有体现测试贯穿软件生命周期的原则;
      ③不适应用户需求的变化。
    优点:①为项目提供了阶段划分的检查点;
         ②当前一阶段完成后,只需要关注后续阶段。
    螺旋模型:引入风险分析减小损失,适用大型昂贵的软件应用。
    迭代模型:在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:需求分析、设计、实施和测试工作流程。
    优点:①降低了在一个增量上的开支风险
         ②降低了产品无法按照既定进度进入市场的风险
         ③加快了整个开发进度
         ④迭代过程这种模式适应需求变化会更容易
    敏捷模型:
    增量模型:吧软件分割成独立的模块,可以分批次交付,一般和跌倒模型一起使用
    缺点:打破原有的结构或架构存下风险
    快速原型模型:可以模拟操作,简单运行,常用工具Axure



软件测试流程:
        获取测试需求→编写测试计划→制定测试方案→开发与设计测试用例→执行测试→提交缺陷报告→测试分析评审→提交测试总结→准备下一版本测试
软件测试过程模型:
        V型 W型 H型 X型
V:揭示了开发与测试中各阶段的对应关系
缺点:①V模型仅仅把测试过程作为需求分析、系统设计及编码之后的一个阶段,忽视了测试对需求分析、系统设计的验证
   ②需求的满足情况一直到后期的验收测试才被验证
   ③没有体现“尽早地和不断的进行软件测试”的原则
      
   开发            测试
    用户需求         验收测试
    需求分析与系统设计系统测试
    概要设计         集成测试
    详细设计         单元测试
               编码
W:由两个V组成,分别代表测试与开发,明确表示出了开发与测试的并行关系
优点:测试活动与软件开发同步进行
      测试对象不仅仅是程序,包括需求和设计
      尽早的发现软件缺陷可降低软件开发的成本
局限:在W模型中,需求、设计、编码等活动被视为串行的,这样就无法支持灵活迭代
H:将测试完全独立了出来,揭示了软件测试是一个独立的流程
X:是V模型的改进,定位了探索性测试,不进行计划的特殊类型测试,能帮助有经验的测试人员发现更多的软件错误。



测试理念:
        尽早的测试
    全面的测试
    全过程的测试
    独立的、迭代的测试

xiaoxiaohacker 发表于 2021-11-2 21:37:15

每日学习新知识一下

予夜以星 发表于 2021-11-13 11:04:57

这个附图就很6

H.U.C清风 发表于 2024-10-3 16:22:52

谢谢分享,已回复。
页: [1]
查看完整版本: 软件测试