自动化作用
提效:
提高测试效率,将重复的回归让自动化去执行,释放测试人力
质量:
防止改动引发bug
**不能够通过bug量去评估回归自动化的质量,如果说你这个用例实现了自动化,构建通过后,但是发现bug,这个就是自动化的锅了
**真正体现自动化发现bug量的是实时自动化,所谓实时自动化,就是在某个需求阶段,测试人员就投入进行自动化设计,在转测前已经实现P0级别或P1级别的部分自动化
然后转测时,这部分用例由自动化来构建,发现的bug量会高,也能减少转测后测试人员的人力投入
自动化理解误区
一个组织要实施自动化测试,首先就要对自动化测试有一个正确的理解。我们通常对自动化测试,都会有一些理解误区,比如:
1. 所有测试用例都可以自动化
首先讲所有的测试用例都自动化本身就是不必要的,因为自动化测试要开发测试脚本,而且执行自动化测试,也是需要时间的,把所有测试用例全部自动化,未必就是性价比最高的。
另一方面自动化测试,主要的是用来减少回归测试的工作量,而回归测试,最重要的是避免最基本的功能和最常用的功能受到影响,从这个理论上来说,我们会把最基本的功能和最常用的功能的测试用例进行自动化,这个就足够了。
现在世界上自动化测试率,最高的也只是达到80%左右。
2. 自动化测试找不到bug
自动化测试,主要是避免由于代码的修改导致原有的正确的功能出现bug,而不是去挖掘更多更深层次的bug。更多更深层次的bug,是把测试人员解放出来后,由测试人员通过探索性测试来发现的。
3. 自动化测试一定会马上大量减少测试人员数量
自动化测试虽然会最终减少测试的工作量,但是他不会是立竿见影的,因为你要实现自动化测试,首先就要进行自动化测试脚本的开发和自动化测试环境的搭建,这需要投入大量的人员和精力。自动化测试能够多长时间见到效果,要取决于这个过程的长短。
4. 自动化测试能代替手工测试
自动化测试,只适用于回归测试,对于新功能测试,还是要依赖于测试人员人员设计测试用例,手动执行。
5. 只有性能测试才需要自动化
自动化测试除了应用于性能测试外,还被大量应用于功能测试。
国外有超过半数的自动化测试脚本,都是用于功能验证测试的。
6. 自动化测试太难上手
自动化测试,已经推行了很长时间,在网上可以找到很多自动化测试的框架、工具、教程。如果你真想实施自动化测试,只要安排专业的测试人员上手学习,自动化测试会很容易实现的。