Selenium3自动化测试【2】自动化测试的优势及应用场景

1.1 自动化测试的优势

自动化测试的开展究竟能给测试工作带来哪些改进,带来哪些突破与欣喜呢?其实,自动化测试的特点即能够很好的概括自动化测试的优势。其主要特点如下:

1.       可重复

不可否认,软件测试有时确实是繁杂且重复性较高的工作。关键性功能模块要在不断迭代的测试版本中重复的测试,而这些工作,随着软件测试版本的迭代将一直持续下去。当开展自动化测试后,即可通过自动化工具来替代这些重复性工作。大大缩减回归测试的工作量与压力,有效提高工作效率,缩短回归测试的时间。

1.       可程序化

自动化测试深入开展后,将不再是简简单单的录制与回放,自动化测试将优化录制的测试脚本,大大提高脚本的灵活性与交互性。自动化测试录制后生成脚本,脚本中包含录制过程中生成的操作与数据。测试工作中,需用不同的测试数据覆盖不同的测试路径来满足不同的测试场景。

因此,数据维护将是一个繁杂的工作。可以将数据与录制的自动化脚本剥离,用外部数据源管理测试数据,而测试脚本只负责测试流程的组织。这样,就可以大大提高自动化测试的灵活性与可持续性。

后续自动化测试工作中,还可开发UI界面,使用UI驱动自动化测试脚本。增加自动化测试交互性。

2.       可靠,提高测试精确度

自动化测试可以执行一些手工测试难以达到或不可能实施的测试。例如,测试工作的执行要精确到秒;模拟大量用户同时对某一个功能点展开测试。这些工作都是手动测试无法实现或很难达到的。而开展自动化测试后,很容易实现这些测试需求。

3.       资源的有效利用

将繁杂重复的测试任务实现自动化,可以提高准确性和工作效率,提高测试工程师的工作积极性。将测试工程师从繁杂重复的工作中解脱出来,投入更多精力到其他的测试工作中(如测试质量),这更有利于测试质量的提高。在实际工作中,有些测试场景是仅适合于手动测试的,测试工程师可以专注于手动测试部分,提高手动测试的效率。

1.2   自动化测试实施的场景

在讨论自动化测试的实施场景前,我们以UI自动化测试为例,看下UI自动化实施的先决条件。

1.       UI趋于稳定

 UI自动化测试的维护成本是非常高的,维护工作量跟UI变动是否频繁有很大的关系。UI自动化开始前,首先需要确定UI功能和流程是否稳定了,若UI功能和流程已经稳定了再开始进行UI自动化。

介入UI自动化建议采取循序渐进的方式,由点到面,一步步的开展UI自动化测试。

2.       大量的UI重复操作

若UI功能已经稳定,但是针对这个UI的测试次数很少,进行UI自动化测试的效率会很低。重复进行操作的UI功能比较适合做UI自动化测试,可以通过自动化测试把测试人员从繁重的功能测试中释放出来,进行更有意义的工作。

 

并非任何手动测试都适合用自动化测试来替代。本节前半段也简单讨论了UI自动化的先决条件。究竟哪些场合适合开展自动化测试呢?

  • 回归测试;
  • 更多更频繁的测试 ;
  • 手工测试无法实现的工作 ;
  • 跨平台产品的测试;
  • 重复性较强的操作。

哪些场合又不适合开展自动化测试呢?

  • 软件版本不稳定;
  • 涉及与物理设备交互的测试;
  • 测试结果较容易通过人工判断的测试。

 1.3   实施自动化测试的成本

当前,很多企业或管理者期望借助软件测试自动化作为催化剂,提高效率、提高质量,同时,节省开支。甚至有些企业希望实施自动化测试后,就能够给企业带来效益。

在此,可以肯定的是自动化测试已经在很多领域成功实施,也有很多成功案例给了企业希望,并且这些企业成功实施自动化测试后,确实节省了相当可观的费用。其中,一些大厂互联网公司(或研发公司)如阿里巴巴、华为、百度、腾讯等也都自己研发满足自己需求的自动化测试工具。而不幸的是,也有很多失败的案例,即使在看到光鲜的成功案例背后,也有失败的过程。身边也有很多企业不止一次尝到了自动化测试失败的滋味。花巨资购买自动化软件,被搁置,努力化为了泡影;耗费很大精力组建的自动化测试团队,最后黯淡解散。失败的结果不仅仅造成了人力、物力的损失,更是直接给公司带来了经济上的损失。

测试自动化实施前期需要考虑很多因素,人力、物力、财力都是需要认真考虑与规划的。自动化测试在整个测试周期中何时开展,哪些测试工作可以由自动化测试替代,这些都需要在开始部署自动化测试前,认真的思考。影响自动化测试效率的因素,不单单是大家看到可量化的测试工作,还有许多无形的因素影响着自动化测试,如测试组织的部署等。因此,在真正实施前一定要认真规划和考虑自动化测试实施方案。

自动化测试的实施过程,完全不同于手动测试。自动化测试用例与手工测试用例也大不相同。自动化测试实施过程中,需要不断的开发与维护脚本,因此对测试人员能力有很高的要求。

自动化测试实施前,需要认真分析与规划测试方案,计算自动化测试的成本。自动化测试成本包括以下几方面:

  • 软件成本:自动化软件产品购买的费用;
  • 培训成本:自动化测试工程师培训费用;
  • 人力成本:自动化测试用例和测试脚本的编写的人力成本。 

《全栈测试系列视频》课程

地址:https://ke.qq.com/course/2525707?tuin=9c43f38e

《测试体系》其它课程

地址:https://51test.ke.qq.com/?tuin=9c43f38e


图书京东、当当有售

京东:https://item.jd.com/12784287.html

当当:http://product.dangdang.com/29177828.html


 

posted @ 2021-02-28 17:12  BlaLeo  阅读(298)  评论(0编辑  收藏  举报