三、软件测试的类型
常见的软件测试类型有:
BVT (Build Verification Test)
BVT是在所有开发工程师都已经检入自己的代码,项目组编译生成当天的版本之后进行,主要目的是验证最新生成的软件版本在功能上是否完整,主要的软件特性是否正确。如无大的问题,就可以进行相应的功能测试。BVT优点是时间短,验证了软件的基本功能。缺点是该种测试的覆盖率很低。因为运行时间短,不可能把所有的情况都测试到。
Scenario Tests(基于用户实际应用场景的测试)
在做BVT、功能测试的时候,可能测试主要集中在某个模块,或比较分离的功能上。当用户来使用这个应用程序的时候,各个模块是作为一个整体来使用的,那么在做测试的时候,就需要模仿用户这样一个真实的使用环境,即用户会有哪些用法,会用这个应用程序做哪些事情,操作会是一个怎样的流程。加了这些测试用例后,再与BVT、功能测试配合,就能使软件整体都能符合用户使用的要求。Scenario Tests优点是关注了用户的需求,缺点是有时候难以真正模仿用户真实的使用情况。
Smoke Test
在测试中发现问题,找到了一个Bug,然后开发人员会来修复这个Bug。这时想知道这次修复是否真的解决了程序的Bug,或者是否会对其它模块造成影响,就需要针对此问题进行专门测试,这个过程就被称为Smoke Test。在很多情况下,做Smoke Test是开发人员在试图解决一个问题的时候,造成了其它功能模块一系列的连锁反应,原因可能是只集中考虑了一开始的那个问题,而忽略其它的问题,这就可能引起了新的Bug。Smoke Test优点是节省测试时间,防止build失败。缺点是覆盖率还是比较低。
此外,Application Compatibility Test(兼容性测试),主要目的是为了兼容第三方软件,确保第三方软件能正常运行,用户不受影响。Accessibility Test(软件适用性测试),是确保软件对于某些有残疾的人士也能正常的使用,但优先级比较低。其它的测试还有Functional Test(功能测试)、Security Test(安全性测试)、Stress Test(压力测试)、Performance Test(性能测试)、Regression Test(回归测试)、Setup/Upgrade Test(安装升级测试)等。
四、微软的软件测试工作
1. 基本情况
测试在微软公司是一项非常重要的工作,微软公司在此方面的投入是非常巨大的。微软对测试的重视表现在工程开发队伍的人员构成上,微软的项目经理、软件开发人员和测试人员的比例基本是1:3:3或1:4:4,可以看出开发人员与测试人员的比例是1:1。对于测试的重视还表现在最后产品要发布的时候,此产品的所有相关部门都必须签字,而测试人员则具有绝对的否决权。
测试人员中分成两种职位,Software Development Engineer in Test(测试组的软件开发工程师)实际上还是属于开发人员,他们具备编写代码的能力和开发工具软件的经验,侧重于开发自动化测试工具和测试脚本,实现测试的自动化。Software Test Engineer(软件测试工程师)具体负责测试软件产品,主要完成一些手工测试以及安装配置测试。
2. 测试计划
测试计划是测试人员管理测试项目,在软件中寻找Bug的一种有效的工具。测试计划主要有两个作用,一是评判团队的测试覆盖率以及效率,让测试工作很有条理的逐步展开。二是有利于与项目经理、开发人员进行沟通。有了测试计划之后,他们就能够知道你是如何开展测试工作的,他们也会从中提出很多有益的意见,确保测试工作顺利进行。总之,有了测试计划可以更好的完成测试工作,确保用户的满意度。
测试人员在编写测试计划之前,应获得以下文档:
1)程序经理编写的产品功能说明书或产品开发计划;
2)程序经理或开发人员提供的开发进度表。
根据产品的特性及开发进度安排,测试人员制定具体的测试计划。测试计划通常包括以下内容:
文章来源于领测软件测试网 https://www.ltesting.net/