发布时间:2020-06-23
一般前端自动化测试大致包括:
Unit-单元测试:一般由开发人员开展测试,写单元测试用例也是开发人员对自己的代码进行检查的一个过程。
Service-服务接口自动化测试:通常指的是接口自动化测试,在分层自动化测试的应用中,接口自动化是最常用的自动化解决方案。结合数据驱动测试框架、关键字驱动测试框架可以满足大部分测试场景,包含含有复杂业务逻辑的功能的覆盖(B接口依赖A接口返回)。特别是在前后端分离的产品架构设计中,可以对功能点进行有效的覆盖,至于页面显示、页面元素布局、展示的验证可以通过手工测试或者其他工具覆盖。
UI-页面自动化测试:UI层是与用户进行交互的,测试工作大多集中在这一层。根据个人实践经验,大部分场景下不推荐UI自动化,难以做到高效的维护,关于UI自动化的两点建议:能在底层做自动化覆盖,就尽量不在UI层做自动化覆盖;只做最核心的功能的自动化覆盖,脚本可维护性尽可能提高。
自动化测试开展的必要条件
首先,是否开展自动化,通常需要同时满足以下条件:
软件需求变动不频繁(超过10%的变动是频繁变动,同时10%并不是一个固定值,根据其维护、扩展成本适当调整阈值);
项目周期足够长:自动化测试用例可重复使用,同时,自动化测试的是否易于扩展、易于维护对其可持续性而言非常重要。
自动化测试的局限性
一方面,自动化测试的局限性体现在上述其开展的必要条件,如果在不满足其必要条件的背景下,开展自动化会发现自动化并不会提高测试效率,甚至可能加大了测试成本。
另一方面,UI自动化与接口自动化本身的局限性,UI自动化较接口自动化而言其具备覆盖率高的优势(接口测试无法覆盖页面元素、格式、数据),接口自动化较UI自动化而言具备高扩展、易维护、问题修复成本低的优势。
自动化测试的目的
自动化测试的直接目的是围绕产品质量提高测试效率,其根本目的(效率转化)无外乎以下几点:
真正的实现项目人力投入的缩减
做更多更有意义的测试,比如更深入的需求分析、测试设计或者对测试左移、右移的投入;
适应开发模式的转变,比如类敏捷、devops、testops模式下的频繁迭代、持续部署、质量运营等。
如何进行前端自动化测试
我们知道UI自动化其开展的前提更强调系统的稳定性,不稳定的系统会导致频繁的自动化用例维护,这种维护成本是巨大的,甚至会出现原本两个人测试的项目,引入UI自动化现在需要三个人测试的情况。
那么系统稳定性高,改动的可能性较小的情况下如何进行UI自动化?如果系统的稳定性一般,存在需求改动、页面优化的可能性,如何开展高覆盖的自动化测试?建议使用泽众推出的自动化测试框架实现PC端界面自动化测试。
最后,充分考虑易维护性、易扩展性的自动化测试策略设计,是可以实现自动化测试前移的,并非只能用于系统稳定或者回归测试的场景中。
推荐阅读:
您的信息已成功提交!
我们的客服人员稍后会与您联系