嵌入式软件测试技术

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
终使用 8:测试工具与目标机连接方式影响测试的可靠性
Copyright McCabe & Associates 1998
支持开发的不同阶段需要不同的工具
Desktop Software Only Cantata, Attol, Maccabe
Host + Target Based on PC Target HW - External Probes
交付或乱成一团。 ❖ 更多的电路板,更多的软件,更加复杂!
Copyright McCabe & Associates 1998
软件质量低劣所付出的代价: 如果关键系统出现故障?
❖ 商务飞机坠毁 ❖ 反导弹防卫系统无法工作 ❖ 核反应堆发生核泄露 ❖ 运送卫星的火箭在空中爆炸 ❖ 导弹追踪卫星报告了错误的方位 ❖ …………
大 ❖…… … …
Copyright McCabe & Associates 1998
实时嵌入式系统与仿真环境不同
W. Wayt Gibbs Staff Writer, Scientific American ❖ 实时系统中的错误通常很难找
到原因,因为,就象你的车上 的发动机发出奇怪的声音一样 它只在某种条件下才会出现。 ❖ 故障在仿真环境中无法再现。
嵌入式软件的实时在线测试
Copyright McCabe & Associates 1998
议程
❖ 嵌入式软件测试的必要性与测试难度 ❖ 嵌入式系统、嵌入式系统特点、嵌入式软件特点 ❖ 嵌入式软件测试与测试方法 ❖ 嵌入式软件在线测试的方法
1: Coverage analysis 2: Performance analysis 3: Logic trigger and trace analysis 4: Memory analysis 5: RTOS analysis ❖ 嵌入式软件在线测试和分析工具 1: TRACE32 - ICE 2: TRACE32 - FIRE 3: TRACE32 - ICD
Copyright McCabe & Associates 1998
???问题的提出 ??? 真实世界中嵌入式系统常见故障
– 系统处理能力不可置疑,为什么效率如此低,问题 在哪里?
– 数据采集系统的采样的数据与现场相差甚远,原因 何在?
– 系统运行中,随机性复位或宕机,硬件、软件工程 师百思不得其解?
Copyright McCabe & Associates 1998
嵌入式软件测试自身特点和测试困难
1:嵌入式系统实时性要求测试工 具准确测试软件性能 2:内存有限要求对被测软件不能附加太多代码冗余 3:软件与硬件紧密相关增加测试难度 4:嵌入式软件载入目标机执行需要特定的硬件测试工具配套 5:嵌入式系统代码量日益增多,测试难度增加 6:嵌入式系统越复杂,测试越复杂,测试风险越大 7:实验测试环境与真实运行环境存在差异关系到嵌入式软件最
结论:我们迫切需要采用合适的工具,从单元
集成、系统、现场等各个阶段,对嵌入式系统的 软件进行实时在线测试和分析,保证系统的性能 和可靠性。
Copyright McCabe & Associates 1998
嵌入式系统、嵌入式系统组成、特点
嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、 适应应用系统对功能、可靠性、成本、体积、功耗严格要求、有一定时 间约束的实时专用计算机系统 嵌入式系统组成:嵌入式微处理器、外围硬件设备、嵌入式操作系统、 用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或 管理等功能。实时系统可以部分地从及时完成计算、处理或判断的能力 来辨别 嵌入式系统特点: – 专用性:嵌入式系统通常是面向特定应用或特定用户的系统,不
能进行修改的,必须有一套开发工具和环境才能进行开发
Copyright McCabe & Associates 1998
嵌入式系统软件的特征
嵌入式系统的应用软件是实现嵌入式系统 功能的关键,对嵌入式处理器系统软件和 应用软件的要求也和通用计算机有所不同
(1) 软件要求固态化存储 :为了提高执行速度和系统可靠性,嵌入式系统 中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等 载体中。 (2) 软件代码高质量、高可靠性: 尽管半导体技术的发展使处理器速度不 断提高、片上存储器容量不断增加,但在大多数应用中,存储空间仍然是 宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量要高 以减少程序二进制代码长度、提高执行速度。 (3) 系统软件(OS)的高实时性是基本要求 :在多任务嵌入式系统中对重要 性各不相同的任务进行统筹兼顾的合理调度是保证每个任务及时执行的关 键,单纯通过提高处理器速度是无法完成和没有效率的,这种任务调度只 能由优化编写的系统软件来完成,因此系统软件的高实时性是基本要求。 (4) 多任务操作系统是知识集成的平台和走向工业标准化道路的基础要求
Copyright McCabe & Associates 1998
我们早已认识到软件测试重要性 但对于嵌入式软件测试新的困难又出现了!
❖ 软件的测试不如硬件板卡测试普 遍
❖ 测试工作缺乏可度量的管理手段 ❖ 软件的功能性测试不够完善,需
要新的方法的补充。 ❖ 嵌入式系统代码量日益增多,测
试难度增加 ❖ 系统越复杂,测试越复杂,风险越
同嵌入式系统的硬件和软件很难通用。 – 高度集成:能够把通用CPU中许多由板卡完成的任务集成在芯片内
部,从而有利于嵌入式系统设计趋于小型化。 – 软件设计:嵌入式系统软件的设计与硬件关系密切。软件往往受限
于硬件,很难象非嵌入式系统那样自由发挥。 – 开发的特殊性:嵌入式系统无自举开发能力,不能对其中的程序功
– 系统软件莫名奇妙跑飞,何处使然 ? – 我如何捉住寄生在系统中隐藏BUG ?无计可施!
我咋办哪?
Copyright McCabe & Associates 1998
ຫໍສະໝຸດ Baidu
真实世界中嵌入式软件故障导致的结果
结果:
❖ 金融在线事务处理系统瘫痪 ❖ 电话交换网络瘫痪 ❖ 电话系统崩溃,丢失了五千万次呼叫 ❖ 电脑控制机场行李运送系统出现故障,行李延迟
相关文档
最新文档