前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >嵌入式软件测试笔记5 | 开发人员需要做哪些测试?

嵌入式软件测试笔记5 | 开发人员需要做哪些测试?

原创
作者头像
虫无涯
发布2023-06-15 13:47:08
1980
发布2023-06-15 13:47:08
举报
文章被收录于专栏:全栈测试技术

1 开发人员测试的重要性

  • 早期发现的错误容易解决;
  • 高质量的基础元素更容易建立起高质量的系统;
  • 开发后期发现的缺陷,很难追踪其根源;
  • 解决开发后期发现的缺陷,在回归测试上需要投入更大的时间成本;
  • 开发阶段做的测试,对整个项目时间产生积极影响;
  • 异常处理只有在单元测试才能被很好的处理。

2 集成方法

2.1 三种策略和组合策略

  • 三种策略:

自上向下集成; 自下向上集成; 混合集成。

  • 组合策略:

集成部件的可用性; 系统规模; 是新系统还是在现有系统上增加功能; 体系架构。

2.1.1 混合集成

  • 集成的前提条件为:

① 系统基本稳定,只需添加小部分新的模块; ② 系统规模相对较小; ③ 各模块之间紧耦合。

  • 方法:将所有的模块集成在一起,将系统当成一个整体进行测试;
  • 优点:不需要使用占位与驱动程序,策略比较简单;
  • 缺陷:难以发现引起缺陷的原因,只有在所有模块准备好的前提下才能进行集成。

2.1.2 自下向上集成

  • 该策略基本适用于任何系统;
  • 方法:从低层次的、相互之间依赖性最少的模块开始,可使用驱动程序来测试这些模块;
  • 策略:逐步建立系统,或者首先并行地建立子系统,然后集成一个完整系统;
  • 阶段:开发过程的早期阶段;
  • 优点:尽早检测出接口的问题,且解决成本低;
  • 缺点:需要使用许多驱动程序来执行这个策略,比较耗时。

2.1.3 自上向下集成

  • 由系统的控制结构来指导;
  • 缺点:需求变化对底层模块产生影响,从而导致上层模块需要更改。

2.1.4 集中式集成

  • 使用场景:

① 当系统的中心部分对其他部分的运行必不可少时; ② 必须有中心部分才能进行测试,且改部分很难由占位来代替; ③ 系统的体系架构为:首先开发中心部分作为产品,然后发布新模块或子系统来升级系统或增加新功能。

2.1.5 分层集成

  • 用于分层式体系架构的系统;
  • 各层之间仅通过接口与其上下层直接相连;
  • 每一层可以单独使用自上而下、自下而上或混合策略。

2.1.6 客户/服务器集成

  • 用于客户/服务体系架构;
  • 客户端:使用自上而下、自下而上或混合策略;
  • 服务器:使用占位和驱动程序的策略。
  • 将服务器和客户端集成到一起。

2.1.7 协作集成

  • 用于面向对象的系统;
  • 协作被清楚定义且覆盖所有的部件和接口;
  • 协作之间相互重叠,没有必要测试每一个动作。

2.2 应用集成师

  • 应用集成师(AI)主要是协调单元测试和集成测试;
  • AI对集成过程的进展以及交付的系统质量负责;
  • 一个AI最大的控制范围是10个开发人员。

3 生命周期

  • 指的是开发人员测试的盛生命周期;
  • 虽然没有测试团队的测试生命周期严格,但是有一些区别。

3.1 计划和控制

  • 相关活动如下:

① 明确任务; ② 建立测试基础; ③ 定义测试策略; ④ 列出测试交付清单; ⑤ 设置组织; ⑥ 定义基础设施; ⑦ 建立进度表; ⑧ 合并与维护测试计划; ⑨ 控制测试; ⑩ 报告。

3.2 准备阶段

  • 审查测试基础的可测试性;
  • 描述基础设施。

3.3 细化阶段

  • 细化测试;
  • 创建工具。

3.4 执行阶段

  • 执行测试用例并记录结果;
  • 单元测试的终止标准用集成测试的输入标准来描述;
  • 所有部件都集成起来,且待测试系统符合集成测试的输出标准时,终止集成测试;
  • 单元测试的执行者通常为开发人员。

3.5 完成阶段

  • 报告测试对象的状况。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 开发人员测试的重要性
  • 2 集成方法
    • 2.1 三种策略和组合策略
      • 2.1.1 混合集成
      • 2.1.2 自下向上集成
      • 2.1.3 自上向下集成
      • 2.1.4 集中式集成
      • 2.1.5 分层集成
      • 2.1.6 客户/服务器集成
      • 2.1.7 协作集成
    • 2.2 应用集成师
    • 3 生命周期
      • 3.1 计划和控制
        • 3.2 准备阶段
          • 3.3 细化阶段
            • 3.4 执行阶段
              • 3.5 完成阶段
              相关产品与服务
              腾讯云服务器利旧
              云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档