|
测试自动化通过较少的开销可以获得更彻底的测试,并提高产品的质量。但是,在实际使用自动测试的过程中,还存在一些普遍的问题,归纳如下:
(1) 人们乐观地期望测试工具可以解决目前遇到的所有问题,但无论工具从技术角度实现得多么好,都满足不了这种不现实的期望。
(2) 如果缺乏测试实践经验,测试组织差,文档较少或不一致,测试发现缺陷的能力较差,在这种情况下采用自动测试并不是好办法。
(3) 人们容易期望自动测试发现大量的新缺陷。测试执行工具是回归测试工具,用于重复已经运行过的测试,这是一件很有意义的工作,但并不是用来发现大量新的缺陷。
(4) 因为测试软件没有发现任何缺陷并不意味着软件没有缺陷,测试不可能全面或测试本身就有缺陷,但人们在使用自动化测试过程中会缺乏这种意识。
(5) 当软件修改后,经常需要修改部分或全部测试,以便可以重新正确地运行,对于自动测试更是如此。测试维护的开销打击了测试自动化的积极性。
(6) 商用测试执行工具是软件产品,由销售商销售,它们往往不具备解决问题的能力和有力的技术支持,因此给用户带来失望,认为测试工具不能很好地测试。
(7) 自动测试实施起来并不简单,必须有管理支持及组织艺术,必须进行选型、培训和实践,并在组织内普遍使用工具。
测试自动化具有局限性,不可能取代手工测试。手工测试可以比自动测试发现更多的缺陷,而测试自动化对期望结果的正确性有极大的依赖性。测试自动化并不能改进测试有效性,并对软件开发有一定的制约作用,测试工具没有创造性灵活性较差。然而,测试自动化可以大大促进软件测试的质量和产品化。
手工测试是最强大的,它强大在于发现更多的缺陷,不是人门简单讲的Click,Click,Click测试,测试是种艺术,测试是种工艺,测试是种科学! |
|