6)配置范围和测试工具:

  a. 给出测试时使用的所有计算机平台列表;

  b. 描述测试覆盖了哪些硬件设备;

  c. 测试时使用的主要测试工具。

  此外,还应列出测试中可能会面临的风险及测试的依赖性,即测试是否依赖于某个产品或某个团队。比如此项测试依赖性WindowsCE这个操作系统,而这个系统要明年2月份才能做好,那么此项测试可能只有在明年5月份才能完成,这样存在着依赖关系。如果那个团队的开发计划往后推,则此项测试也会被推迟。

  3. 测试用例开发

  一个好的测试用例是有一个合理的概率来找到Bug,不要冗余,要有针对性,一个测试只针对一件事情。特别是功能测试的时候,如果一个测试是测了两项功能,那么如果测试结果失败的话,不知道到底是哪项功能出了问题。

  测试用例开发中主要使用的技术有等价类划分,边界值的分析,Error Guessing Testing。

  等价类划分是根据输入输出条件,以及自身的一些特性分成两个或更多个子集,来减少所需要测试的用例个数,并且能用很少的测试用例来覆盖很多的情况,减少测试用例的冗余度。在等价类划分中,基本的划分是一个为合法的类,一个为不合法的类。

  边界值的分析是利用了一个规律,即程序容易发生错误的地方是在边界值的附近,它取决于变量的类型,以及变量的取值范围。一般对于有n个变量时,会有6n+1个测试用例,取值分别是min-1, min, min+1, normal, max-1, max,max+1的组合。边界值的分析的缺点,是对逻辑变量和布尔型变量不起作用,还有可能会忽略掉某些输入的组合。

  Error Guessing Testing完全靠的是经验,所设计的测试用例是常说的猜测。感觉到软件在某个地方可能出错,去设计相应的测试用例,这主要是靠实际工作中所积累的经验和知识。其优点是速度快,只要想得到,能很快设计出测试用例。缺点是没有系统性,无法知道覆盖率会有多少,很可能会遗漏一些测试领域。

  实际上在微软是采用一些专门的软件或工具负责测试用例的管理,有一些测试信息可以被记录下来,比如测试用例的简单描述,在哪些平台执行,是手工测试还是自动测试,运行的频率是每天运行一次,还是每周运行一次。此外还有清晰的测试通过或失败的标准,以及详细记录测试的每个步骤。