发布时间:2020-08-05
随着IT行业的快速发展,对于测试开发人员来说,自动化测试是一个躲不开的话题。这可以说是不管测试人员使用不使用都需要有所了解的一个知识,今天我们就来了解一下自动化测试的分层思想和什么样的项目适合自动化测试。
自动化测试分层思想
自动化测试分层思想所倡导的是对系统进行分层,针对不同层次选择合适的自动化类型进行测试的一种测试策略,同时自动化测试分层思想也与测试阶段(单元测试、集成测试、系统测试)具备相关性。项目的自动化测试覆盖程度取决于各分层自动化测试分层策略设计的合理性、全面性。
Unit-单元测试
一般由开发人员开展测试,也就是我们日常所说的开发人员对自己开发代码的自测过程。
Service-服务集成的接口自动化测试
通常指的是API接口自动化测试,在分层自动化测试的应用中,接口自动化是最常见的自动化解决方案。
同时,结合数据驱动测试框架、关键字驱动测试框架可以满足大部分测试场景,包含含有复杂业务逻辑的功能的覆盖(B接口依赖A接口返回),同时降低测试代码的冗余。特别是在前后端分离的产品架构设计中,可以对功能点进行有效的覆盖,至于页面显示、页面元素布局、展示的验证可以通过手工测试或者其他工具覆盖。
UI-页面自动化测试
UI层是与用户进行交互的,用户通过与UI层交互使用系统功能。测试人员的大部分测试工作(黑盒测试)也集中在这一层。根据个人实践经验,大部分场景下都不推荐UI自动化,难以做到高效的维护,投入产出比不可控。关于UI自动化的三点建议如下:
优先考虑底层自动化覆盖,尽量不进行UI自动化覆盖。
优先考虑核心功能的自动化覆盖,降低非核心功能的自动化覆盖。
着重考虑自动化的可扩展性、易维护性设计。
自动化测试开展的必要条件
1、需求稳定,不会频繁变更
自动化测试最大的挑战就是需求的变化,而自动化脚本本身就需要修改、扩展、debug,去适应新的功能,如果投入产出比太低,那么自动化测试也失去了其价值和意义;
折中的做法是选择相对稳定的模块和功能进行自动化测试,变动较大、需求变更较频繁的部分用手工测试;
2、多平台运行,组合遍历型、大量的重复任务
测试数据、测试用例、自动化脚本的重用性和移植性较强,降低成本,提高效率和价值;
3、被测系统开发较为规范,可测试性强
主要出于这几点考虑:被测试系统的架构差异、测试技术和工具的适应性、测试人员的能力能否设计开发出适应差异的自动化测试框架;
4、软件维护周期长,有生命力
自动化测试的需求稳定性要求、自动化框架的设计、脚本开发与调试均需要时间,这其实也是一个软件开发过程,如果项目周期较短,没有足够的时间去支持这一过程,那自动化测试也就不需要了;
以上的内容就是关于自动化测试的一些知识,既然今天我们聊到了自动化测试,那小编就给大家介绍一个自动化测试工具,AutoRunner是一个自动化测试工具,也是一个自动测试框架,加载不同的测试组件,能够实现面向不同应用的测试。
推荐阅读:
您的信息已成功提交!
我们的客服人员稍后会与您联系