自动化测试的优势:
- 1.可复用性
一旦编写好自动化测试脚本或者测试工具,便可以重复使用,使得我们可以避免繁琐重复的手工测试。
- 2.可靠性
手工测试在一定条件下存在不确定性,偶尔会出现漏测或者误判的情况,但是自动化测试的预期输入和输出的确定性,可以弥补此类缺陷。
- 3.速度快,时间自由
自动化测试的执行速度比人类快很多;而且不受时间、地点人员、任务量的限制。比如说测试脚本可以随时执行,设置定时任务,脚本就可以在下班后执行。
- 4.可编程
自动化测试可以完成一些手工不能完成的测试任务,例如性能测试。
自动化测试的劣势:
- 自动化测试并不能取代手工测试,它只是替代手工测试中执行频率最高、机械化的重复步骤,起到互补。
- 自动化也不智能,只会按照代码里我们既定好的步骤去执行,中间发生任何意外,有可能执行失败。
- 自动化测试发现的bug通常会很少,主要职责就是用来回归。
- 自动化测试的产出价值往往在于长期的回归测试,短期内发挥的作用可能不明显。
- 测试的效率很大程度上依赖自动化测试用例的设计以及实现质量,不稳定的自动化测试用例实现比没有自动化更糟糕。
- 自动化脚本可能包含错误,并且测试用例需要根据版本迭代进行更新,有一定的维护成本。
- 自动化测试开发人员必须具备一定的编程能力,这对传统的手工测试工程师会是一个挑战,需要额外学习成本。