当前位置:首页 > 通信技术 > 通信技术
[导读]国内软件测试现状近期国家对软件行业也给出了很多鼓励政策,软件及相关行业在中国得到了很大的发展,我们也看到了一大批软件企业在国际中也占据了很重要的地位。不过我们发现很多软件公司在重视代码开发的同时,却没

国内软件测试现状

近期国家对软件行业也给出了很多鼓励政策,软件及相关行业在中国得到了很大的发展,我们也看到了一大批软件企业在国际中也占据了很重要的地位。不过我们发现很多软件公司在重视代码开发的同时,却没有把代码质量跟上去,忽略了测试在整个项目工程的重要性。

可是测试真的是不重要,只是开发的附属品吗?我们列举一个例子说明:美国微软,该公司的开发人员和测试人员的比例是1:1,也就是说每个开发人员会配备一名测试人员,而且这名测试人员都是具有和开发人员一样的开发能力的,可以进行大规模自动化测试。微软重视测试的原因也很简单,因为在宽带普及以前,很多更新都是靠邮寄光盘完成的,更新的成本非常高,一定要在出厂前严把质量关。对于一个纯软件公司是如此,那么我们的一些有硬件产品的公司,如果产品是因为软件上面出现了重大缺陷,大规模硬件召回的成本是不是会更高呢?目前在国内,很多的企业也认识到了测试的重要性,可是只是停留在认识阶段,只是做做简单的黑盒测试,功能性测试等。有的负责人也许会谈到,我们的产品是基于互联网产品,软件大部分都是在服务器端,更新的成本大幅降低。那么我们就更应该做好产品,让广大的客户端用户对产品有更好的用户体验,给网友们更好的服务,而不是一味的借助于网络更新,在使用中发现错误后去弥补。最近一次的暴风影音的“召回门”就是一个很好的说明。

对于一些正在成长中的中小企业,由于人力资源有限,目前还没有比较正规的测试,我们还可以理解。可是一些已经形成规模,有一定研发力量的大型企业,是很有必要建立一整套完整的测试流程来完善公司的产品。但是在和大公司负责人沟通得知和我们的期望值还是有一定差距的。他们可能花了大量的人力,物力来通过 CMM,ISO认证,却不能踏实的做好测试。在他们眼里,认证才是一个公司的硬实力体现,测试则是一个可有可无的过程。这一点让人有点黯然,在中国的快餐市场上,我们该如何推动我们软件测试,不是靠你和我,而是靠全民总动员,大家要培养这个意识,把这个意识和行动穿叉在我们研发的全部过程中,难道我们还做不出好的产品吗?

这让我马上我想到了已经和联通签约马上进入中国的IPhone,可以说这一款手机改变了整个世界对手机的使用习惯。IPhone的成功,个人观点,软件质量的稳定性可靠性是最为关键的一票。

在我们和客户聊到测试的时候,他们说也是有心无力,只能通过人为的做一些简单的测试来应付。于是我们会给他们介绍一些自动化的测试工具的时候来协助测试,这些企业普遍表现了对这次测试工具的兴趣。不过,这些工具的价格立即扼杀了他们抓测试的信心,他们无法接受一张光盘的叫价超过一辆汽车,他们更喜欢实物。可是他们忘了,软件的价值不是体现在一张光盘上面,而且体现在这个软件能给企业,给人们生活带来的益处。

诚然,价格,技术和企业愿望是目前测试在中国走的很艰难的原因。目前一些测试培训机构也是在积极培养专门的测试人才。我们也希望有国内的企业能做出我们自己比较好的测试工具来打破测试工具昂贵的价格坚冰。我相信有那么一天中国的软件质量一定会在世界上有属于自己的一席之地。

测试工具简评

在这里,也结合我个人的经验,按照开发V模型来分别讲讲几个对应的自动化测试工具。

在软件开发初级阶段,对应于代码做静态分析。目前很多的企业都没有做静态分析,甚至还有企业不太明确静态分析。在这里给大家推荐的工具是QAC和PC-lint。

PC-lint在国内的用户基础比较好,这个工具出来的比较早,由一个大学教授编写,而且价格也不贵,只有命令行模式是它的局限性,检查的代码规则不多。目前有部分企业用这个工具做代码静态分析。

12

QAC这个工具进入国内也有一段时间,不过推广力度不是很大,目前这个工具在外资企业的研发部门的推广的比较好,国内的一些大企业和一些测试评测中心也在使用该工具,该工具使用起来比较方便,界面形式,也支持命令行模式,还有是MISR的标准制定者之一,所以比较有权威性,专业性很强,在国内也有很好的技术支持。价格相对来说就比较贵了。

然后动态单元测试这块,可以看看parasoft旗下的几款产品,有分别针对java语言的,C++语言的版本。该工具使用起来还比较方便,是基于Eclipse框架开发的,界面友好,功能也比较强大,在上海有office。当然就是价格不太让人接受。

当然如果只是要做内存泄露这块,可以了解一下parasoft旗下的一个工具insure++。这个工具可以实施监控内存的一个使用情况。

如果是做嵌入式这块单元/集成测试,用户与也可以使用IPL的Cantata++和IBM的RTRT,这两个工具在针对嵌入式这块的单元/集成测试比较强大,特别是Cantata++还支持自动的打桩,封装,这个也是该工具的一个亮点。

上篇中提到要对这几个概念做说明的,这这里作个补充:就CANTATA++举例:

1)打桩是对被测函数外部调用的替代,是用来对没有开发的或用户开发的模块进行模拟。对系统函数,由于Cantata++已经作了移植,都可直接使用,不用也不能打桩。不能打桩时,接口数据无法验证。

2)使用封装的before功能,可检测对外部调用的参数数据、全局数据是否满足测试时的要求;并且可以修改参数、全局数据的值,使得外部函数按照测试的要求运行。例如嵌入式应用中经常将一个数据转换为指针,然后使用指针操作相关的内存数据,但在主机环境测试时,由于内存保护,指针指向的地址为空,程序就飞了。在这种情况下就可以使用before功能定义变量,将变量的地址传送给被调用的函数,从而完整地验证功能和覆盖率。

3)使用封装的after功能迫使外部调用返回很难实现或无法达到的条件,从而使被测模块的功能和分支都得到验证。如在主机环境下对malloc函数封装,在一般情况下是无法实现返回空指针的结果。利用Cantata++封装的after功能修改返malloc函数返回值为NULL指针,这样被测函数的错误处理功能得到验证。

如果需要对代码做一个质量度量,推荐使用一个质量度量工具McCabe,这个工具不需要执行代码就可以完成代码走查,对代码有一个深层次的代码度量,提供多达几十种度量。操作起来很方便,只是要熟悉这个产品,需要对产品有一定的理解,对项目管理有很大的帮助。[!--empirenews.page--]

至于后面的版本管理工具,CVS,VSS,我在这里就不做太多的介绍。

12
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭