自动化测试框架

来源:互联网 发布:淘宝模拟试衣怎么进去 编辑:程序博客网 时间:2024/05/17 21:46

自动化测试框架包含的环节

1. 重用性

指:开发的功能需要有良好的可重复利用的效果。

例如:

公共的业务单元提炼出来,比如登陆模块。

2. 提供数据和脚本分离

指:在测试脚本中,不出现具体的测试数据,这些测试数据通过外部文件的方式存储。在运行中引用。

例如:

  • 测试数据
    这里写图片描述
  • 测试脚本
    这里写图片描述
  • 测试结果
    这里写图片描述

3. 提供脚本和业务分离

指: 业务脚本和测试用例区分开,业务脚本单独放在一个java文件中,供测试脚本执行调用。

例如:

  • 测试用例
    这里写图片描述
  • 业务流程
    业务
  • 测试数据
    这里写图片描述

4. 提供框架执行报告

主要是提供测试执行的接哦过报告,目前很多开源的已经提供测试报告,大家开源根据自己的需求进行修改。

例如:

  • TestNG本事自带的报告。
  • TestNG-xslt可以优化TestNG产生的测试报告
  • ReportNG

5. 提供脚本开发的环境配置

框架需要提供可配置的环境变量,不能再框架中写死环境的参数。

例如:
  • 开发环境
  • 集成环境
  • 测试环境
  • 预发布环境
    这里写图片描述

6. 框架的执行性能

指的是框架执行测试脚本的性能效果怎么样?采用什么样的机制去执行,框架提供怎么样的配置去允许框架如此执行。

例如:
  • 多进程执行测试脚本。
  • 分布式执行测试脚本。

7. 框架的执行

指的是框架支持怎么样的一个执行效果,允许单执行,多执行,失败执行等,需要提供这样的一个机制。

例如:

  • 执行单独的测试用例;
  • 批量执行测试用例;
  • 只执行失败的测试用例;
  • 可以在前一组测试用例执行结果的基础上,执行下一组测试用例;

8. 脚本的版本管理

脚本的版本管理机制,根据不同的需要执行不同的版本的测试用例。框架需要提供这样的一个功能。

例如: 不同版本的APP

  • 目前TestNG提供分组的功能可以考虑使用。
  • 在配合SVN或者git的本地存储功能。

9. 框架提供执行日志

在脚本执行的过程中,打印出来的运行信息,特别是打印出框架的信息,测试数据的信息以及配置项加载的信息,错误信息等。

例如: 框架的执行信息

这里写图片描述

10. 代码的编写规范

主要是指代码的注释规范,命名规范以及配置项的设定规范等。

例如:

  • 注释规范

这里写图片描述

  • 框架布局规范设定

这里写图片描述

11. 易于调试

编写测试脚本的时候方便脚本的调试。

  • 调试在自动化过程中占据了大量的时间,因此在调试这个过程中需要加以特别的关注

12. 易于维护

指框架在后期修改的时候,不会影响到脚本的,另外就是脚本容易维护修改。这个主要是体现在框架的设置上面。

例如:

  • 测试数据的分离
  • 出错后容易排查问题等

13. 易于脚本的编写

主要是框架要根据业务的需求提供尽可能多的功能,让脚本更简单,快捷。

例如:接口测试框架

  • 只需要按照框架提供的测试流程即可完成用例的编写。
  • 比如提供一键式生成测试脚本等
    1. 第三方功能的支持
      我们在编写框架的时候要考虑成本,很多开源的东西都已经存在了,没有必要在花心思在去写,这个时候我们都可以借用这些工具,在工程中只要引用这些jar即可使用。

例如:

  • 使用pom工程,把jar直接引用进来。
  • 测试工程一键式生成配置。

14. 数据库的配置管理

主要是基于测试环境的变化,我们所使用数据库也是针对不同的环境的,我们这个时候也需要同环境一样进行环境的切换。

例如:

  • 开发环境的数据库
  • 集成环境的数据库
  • 测试环境的数据库
  • 预发布环境的数据库
  • 数据库配置:

    这里写图片描述

  • 数据源配置

    这里写图片描述

15. 数据库的操作管理

指框架提供的框架对数据库的相关操作。

例如:

  • 增删查该操作。

    这里写图片描述

  • 数据连接

    这里写图片描述

  • 数据初始化 ,数据清理,数据检查等

16. 环境的切换

指框架提供快速切换环境的能力,一个配置项的修改即可达到环境切换

例如:

  • 切换Mock环境
  • 切换测试环境

17. 框架提供的测试用来编写流程规范

指的是框架要求的一些流程规范,编写规范,文件的存放位置等。

例如:

  • 测试数据的命名

  • 测试脚本的存放位置

这里写图片描述

  • 测试脚本的命名

这里写图片描述

18. 同其他工具的结合

比如同缺陷工具,测试平台,持续集成等的结合,都需要考虑下。

1 0
原创粉丝点击