软件测试狂想曲,等你来幻想...

发表于:2012-7-17 13:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:phker    来源:51Testing软件测试网采编

  软件质量在几年前,一直是困扰软件工程的头号难题...所以提出了cmmi,敏捷等软件工程方案,企图采用工程化方法客服软件的质量问题(当然软件工程不单单是为了解决软件质量问题,还是为了按时高效的高质量的完成项目而提出)....

  但是实际上还是有很多难题,比如说测试员的水平、程序员的水平、测试的全面性,这些得不到全面的有效的贯彻的话软件质量很难保证。

  测试也只能减少而不能根除软件中的bug,而全面性的测试又不太现实。

  假设我的软件在V1.0版比较认真负责的花了2个月的时间测试了所有的功能,测试覆盖面100%(实事上根本不可能测试覆盖面高达100%,80%就非常不错了),然后在V2.0的时候,又需要全面的测试一遍。因为只有全面的测试才能保证软件的质量,而这个成本很高。

  更主要的是测试人员是人,不是机器,第二次测试的时候基本上就处于厌烦被动状态,不要说测试人员不尽责.并不是说,你花钱给他,他就得变成没有感情的机器。如果成立的话,我花钱顾你做测试,说真的我自己也不想做测试,己所不欲,勿施于人。但是钱总是要赚的,活总是要干的,质量总是要保证的,测试还是必须的。

  那么,我们该如何即全面又高效的.进行软件测试呢?

  测试方法要从考虑下面几个方面

  全面性:测试方法能够全面的测试软件的几乎所有方面,找出所有的bug,比如null异常,界面难看,功能未实现后出错,代码逻辑出错,性能不稳定。

  自动化性:测试需要人工参与的次数或频率越少越好,最好是0。

  简单性:不需要写代码,点点鼠标就好,甚至动动口就好.甚至看着就好。

  重用性:测试一次,N次可重用...甚至无限次可重用...

  最高层幻想一:有没有不需要软件测试人员也能全自动全面测试的方法或软件?

  我个人不相信单凭软件测试人员就能全面的测试的了所有的bug,因为人是不可靠的。当然我们可以采用人海战术来增加bug的发现几率,目前微软是这么干的。体现的效果就是测试人员比开发人员还多。所以微软的产品相对来讲质量要高的多。

  但是可怜了我们这些小公司,无法请这么多专业的测试的人员,往往都是开发人员做测试。

  次之幻想二:软件测试人员可以全面的测第一边,而第二边第三边第N边都由机器代替测试。

  这样的话,最起码,软件测试人员可以不用那么麻烦的测试N边,而态度消极..测试人员只要尽量的考虑多个bug,就可以随时间的增加而减少bug,其它的重复的测试让机器来做吧。这个倒是很不错,目前实现此种幻想的倒是有单元测试

  问题是:

  一:做单元测试的人要懂代码。

  二:单元测试覆盖面不够广,有些功能必须由人工来测试,比如说界面。

  三:单元测试的重用性很低。一个测试只能在一个项目里使用,尤其是测试功能的单元测试。当然重用性也是有的,比如说sql注入检测程序,性能测试程序,DDOS攻击测试程序。但他们往往都不属于单元测试的范围,而是专业测试工具的范围。

  次之幻想三:等你来发表..

  次之幻想四:

  次之幻想五:

  如果你没有想法,大家可以发表下如何实现最高幻想一。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号