软件产品检测的意义:
软件产品检测能够解放程序员和售后服务人员。软件测试能够减低软件质量风险,使程序员能够更专注于解决程序的算法和效率,与此同时通过严谨检验的完善产品也减轻了售后服务人员的任务量。
软件测试的目的
简单地说,就是替用户受过,测试的最终目的是确保最终交给用户的产品的功能符合用户的需求,把尽可能多的问题在产品交给用户之前发现并改正。具体地讲,测试一般要达到下列目标:
1、 确保产品是健壮的和适应用户环境的 健壮性即稳定性,是产品质量的基本要求,尤其对于一个用于事务关键或时间关键的工作环境中。另外就是不能假设用户的环境(某些项目可能除外),如:报业用户许多配置是比较低的,而且是和某些第三方产品同时使用的。
2、 确保产品满足性能和效率的要求 使用起来系统运行效率低(性能低)、或用户界面不友好、用户操作不方便(效率低)的产品不能说是一个有竞争力的产品。用户最关心的不是你的技术有多先进、功能有多强大,而是他能从这些技术、这些功能中得到多少好处。也就是说,用户关心的是他能从中取出多少,而不是你已经放进去多少。
3、确保产品完成了它所承诺或公布的功能,并且所有用户可以访问到的功能都有明确的书面说明------在某种意义上与ISO9001是同一种思想。产品缺少明确的书面文档,是厂商一种短期行为的表现,也是一种不负责任的表现。所谓短期行为,是指缺少明确的书面文档既不利于产品最后的顺利交付,容易与用户发生矛盾,影响厂商的声誉和将来与用户的合作关系;同时也不利于产品的后期维护,也使厂商支出超额的用户培训和技术支持费用。从长期利益看,这是很不划算的。领测认为接触过的软件产品,很少有向方正这样大大的产品、薄薄的文档。
软件测试的目的是为了能增强软件使用可靠性,发现软件存在的不足和差异等等。要成为一名专业的软件测试人才必须要掌握专业技能因此要不断学习。
软件产品检测的价值
1.测试来澄清需求
假设有这样一个简单的需求:“用户可以在一个订单同时使用多个折扣”。考虑一下如果用户要求三个50%的折扣,那么这个订单到底怎么打折?是累加起来,打150%折,反给用户钱?还是在50%的基础上打50%折扣, 然后再打50%, 最终打12.5%折呢?所以,我们应该将这个需求表达的更清晰一些。反过来想:这些具体的有明确期望结果的测试不就是一个能够帮助澄清需求的很好的例子吗?
在思考问题的时候,我们还应该考虑两方面:一个是正常路径,另一个是异常路径。通过正常路径,在减少defect的同时,还可以挑选出需要automation的case,以便在每个迭代周期都能对基本功能进行快速验证。考虑异常路径不仅可以澄清当某些地方出错时软件应该怎么做,还可以提醒程序员编写处理出错情况的代码。
在测试时不应该浮于表面一味地写测试用例,应该挖掘更深层次的问题,并且给出合理建议。例如,“当软件和数据库连接断开怎么办?”,“应该每隔5分钟尝试一次连接,连续3次尝试失败后发邮件给数据库管理团队。”
2.快速找到最重要的缺陷
测试过程中发现缺陷是非常正常的事情,但是往往时间和产生的价值不成正比,如何快速准确的定位到重要问题的所在是一个优秀测试人员需要具备的技能,文章列举了一个“应用破坏员工”的例子讲述了几个基本方法:1)区域模型2)快速攻击3)历史缺陷。凭借这些方法一个资深测试人员一夫当关,却有千军万马之势,让重要缺陷无处遁逃。
3.提供有用的测试数据和信息用于整个项目决策
好的测试不仅要包括描述清晰,覆盖率完整的测试用例,更需要的是测试完成以后经过良好分析的测试报告,而我们所做的所有工作都是为了产生一个有用有价值的测试报告,而这个测试报告对于整个项目的许多关键性决策也具有指导性作用。所有单单一个测试pass率或者是完成率是远远不够的,漂亮的测试报告需要有这三点1)系统整体思想2)测试中发现的突出或异常事件3)统计分析数据。使得决策者在拿到报告的同时就可以有个清晰的认识,做出快速正确的判断。
4.与相关人员沟通,协助开发人员修改缺陷
对缺陷报告描述的时候需要尽量清晰,完整,方便开发人员定位错误代码并发现问题。
如果在整个软件开发过程中,软件测试可以做到上述的几点,那么测试的价值就得到了充分的体现.
免责声明:1、文章文字与图片来源网络,如有问题请及时联系我们。2、涉及转载的所有文章、图片、音频视频文件等资料,版权归版权所有人所有。3、本文章内容如无意中侵犯了媒体或个人的知识产权,请联系我们立即删除
审核编辑 黄昊宇
-
软件测试
+关注
关注
2文章
223浏览量
18537
发布评论请先 登录
相关推荐
评论