软件的专用性也是嵌入式软件的一个重要特点
慧聪安防网讯 软硬件结合的嵌入式系统正越来越多地应用到我们常见的仪器设备中,嵌入式领域目标系统的应用系统也日趋复杂,开发技术日新月异同时,随着硬件技术发展的日趋稳定,而软件故障却日益突显,由此软件的重要性已逐渐引起人们的重视,越来越多的研究人员认识到嵌入式系统,优化其测试技术已势在必行,研究出合适的嵌入式软件系统测试方法,正是本课题的意义所在
3)主机环境和目标环境有哪些软件工具,价格怎样?
嵌入式系统简介
4)多少目标环境可以提供给开发者?
在软件测试中,每种测试方法都不是孤立的为了最经济最有效地达到测试的目的,各种测试方法往往是互相嵌套的例如,在软件的单元测试阶段,软件测试可以用黑盒测试和白盒测试的方法分别进行动态测试由于嵌入式软件设计是以一定的目标硬件平台为基础的,面向固定的任务进行的,因此,一旦被加载到目标系统上,功能必须完全确定这个特点决定了嵌入式应用软件的继承性较差,也延长系统的测试时间和增加了测试费用
讨论嵌入式软件测试首先就会遇到一个问题:为什么不把所有测试都放在目标上进行呢?因为若所有测试都放在目标平台上有很多不利的因素:
进行嵌入式软件的测试都应深入考虑以上问题,结合自身实际情况,选定合理测试策略和方案
可能会造成与目标环境开发者争夺时间的瓶颈,避免提供更多的目标环境;
5)主机和目标主机之间的连接怎样?
嵌入式系统软件特点分析
嵌入式系统的开发过程是一个软硬件软件工程师互相协调,互相反馈和互相测试的过程一般来说,在嵌入式系统软件中,底层驱动程序、操作系统和应用程序的界面是不清晰的,根据需要甚至混编在一起这主要是由于嵌入式系统中软件对硬件的依赖性造成的基于嵌入式软件对硬件的依赖性,其要求软件测试时必须最大限度地模拟被测软件的实际运行环境,以保证测试的可靠性,而底层程序和应用程序界限的不清晰又增加了测试的难度测试时只有确认嵌入式系统平台及底层程序是正确的情况下才能进行应用程序的测试,而且在系统测试时,错误的定位较为困难
从软件开发过程中测试所处的不同阶段可分为模块测试、集成测试和系统测试;根据是否需要运行目标代码又可分为动态测试和静态测试;根据目标代码的可见性还可软件公司分为白盒测试(结构测试)和黑盒测试(功能测试)
开发和测试工作可能会妨碍目标环境已存在持续的应用
1)多少开发人员会进行测试工作?
嵌入式软件测试策略和方案设计
嵌入式软件的另外一个重要特点就是实时性这是基于软件的执行角度而言的,也就是说嵌入式软件的执行要满足一定的时间约束嵌入式系统中,应用软件自身算法的复杂度和操作系统任务调度,决定了系统资源的分配和消耗因此,对系统实时性进行测试时,要借助一定的测试工具对应用程序算法复杂度和操作系统任务调度进行分析测试可见嵌入式软件与传统的面向对象和面向过程的软件相比有其自身的特点所以嵌入式软件的开发和测试也就与一般商用软件的开发和测试策略有了很大的不同,可以说嵌入式软件是最难软件开发的工资是多少测试的一种软件针对这些特点对嵌入式软件的测试进行研究是必要的和有意义的
嵌入式系统开发有其自身的特点一般先进行硬件部分的开发,主要包括形成裸机平台,根据需要移植实时操作系统,开发底层的硬件驱动程序等硬件平台测试通过后,应用软件的开发调试是基于该硬件平台进行的,这同时也是对硬件平台的一个测试
2)多少软件应该测试,测试会花费多长时间?
6)被测软件下载到目标主机有多快?
7)使用主机与目标环境之间有什么限制?
根据嵌入式系统的开发流程,为了最经济地实现系统的功能,采用自顶向下、层层推进的方法对嵌入式系统进行测试,采用如下图所示的测试流程
嵌入式软件测试
嵌入式系统一般指非pc类标配系统,它也包括硬件和软件两部分硬件包括处软件开发理器/微处理器、存储器及外设器件和i/o端口、图形控制器等软件部分包括操作系统软件(os)(要求实时和多任务操作)和应用程序有时设计人员把这两种软件组合在一起应用程序控制着系统的运作和行为,而操作系统控制着应用程序编程与硬件的交互作用
上一页12下一页
在本页显示剩余内容
软件测试是软件质量保证的关键因素,代表了规约、设计和编码的最终检查是从经济、效率的角度出发,对软件代码进行质量、正确性保证的一个过程软件测试是软件开发中的一个重要环节,也是软件从开发过程到应用过程的关键一环,嵌入式软件也不例外
确定目标主机(host-target)测试环境后,开发测试人员又会遇到以下的问题:
嵌入式软件测试流程及方法
目标环境可能还不软件公司可行;
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,是专为应用系统量身打造、是对功能、可靠性、成本、体积、功耗有严格要求的专用的计算机系统
比起主机平台环境,目标环境通常是不精密的和不方便的;
嵌入式软件测试流程
嵌入式系统介绍及软件特点
根据不同的指标,软件测试有不同的划分方法
提供给开发者的目标环境和开发环境通常是很昂贵的;
近年来,在软件测试中,测试代码的覆盖率逐渐成为软件测试的统一标准,因此不管采用何种测试方法,尽可能地提高软件测试中的代码覆盖率是必需的软件测试代码覆盖率是基于白盒测试方法的,因此,为了提高软件测试的代码覆盖率,测试人员必须清楚源代码的结构,拥有程序设计文档,以便软件工程设计测试用例,使测试尽可能地覆盖程序内部结构的每条语句,提高代码的覆盖率
平台测试:这部分包括硬件电路测试、操作系统及底层驱动程序测试等