自动化框架应该具备的要点
自动化测试框架包含的环节
1. 重用性
指:开发的功能需要有良好的可重复利用的效果。
公共的业务单元提炼出来,比如登陆模块。
2. 提供数据和脚本分离
指:在测试脚本中,不出现具体的测试数据,这些测试数据通过外部文件的方式存储。在运行中引用。
- 测试数据
- 测试脚本
- 测试结果
3. 提供脚本和业务分离
指: 业务脚本和测试用例区分开,业务脚本单独放在一个java文件中,供测试脚本执行调用。
- 测试用例
- 业务流程
- 测试数据
4. 提供框架执行报告
主要是提供测试执行的接哦过报告,目前很多开源的已经提供测试报告,大家开源根据自己的需求进行修改。
- TestNG本事自带的报告。
- TestNG-xslt可以优化TestNG产生的测试报告
- ReportNG
5. 提供脚本开发的环境配置
框架需要提供可配置的环境变量,不能再框架中写死环境的参数。
例如:
- 开发环境
- 集成环境
- 测试环境
- 预发布环境
6. 框架的执行性能
指的是框架执行测试脚本的性能效果怎么样?采用什么样的机制去执行,框架提供怎么样的配置去允许框架如此执行。
例如:
- 多进程执行测试脚本。
- 分布式执行测试脚本。
7. 框架的执行
指的是框架支持怎么样的一个执行效果,允许单执行,多执行,失败执行等,需要提供这样的一个机制。
- 执行单独的测试用例;
- 批量执行测试用例;
- 只执行失败的测试用例;
- 可以在前一组测试用例执行结果的基础上,执行下一组测试用例;
8. 脚本的版本管理
脚本的版本管理机制,根据不同的需要执行不同的版本的测试用例。框架需要提供这样的一个功能。
- 目前TestNG提供分组的功能可以考虑使用。
- 在配合SVN或者git的本地存储功能。
9. 框架提供执行日志
在脚本执行的过程中,打印出来的运行信息,特别是打印出框架的信息,测试数据的信息以及配置项加载的信息,错误信息等。
10. 代码的编写规范
主要是指代码的注释规范,命名规范以及配置项的设定规范等。
- 注释规范
- 框架布局规范设定
11. 易于调试
编写测试脚本的时候方便脚本的调试。
- 调试在自动化过程中占据了大量的时间,因此在调试这个过程中需要加以特别的关注
12. 易于维护
指框架在后期修改的时候,不会影响到脚本的,另外就是脚本容易维护修改。这个主要是体现在框架的设置上面。
- 测试数据的分离
- 出错后容易排查问题等
13. 易于脚本的编写
主要是框架要根据业务的需求提供尽可能多的功能,让脚本更简单,快捷。
- 只需要按照框架提供的测试流程即可完成用例的编写。
- 比如提供一键式生成测试脚本等
- 第三方功能的支持
我们在编写框架的时候要考虑成本,很多开源的东西都已经存在了,没有必要在花心思在去写,这个时候我们都可以借用这些工具,在工程中只要引用这些jar即可使用。
- 使用pom工程,把jar直接引用进来。
- 测试工程一键式生成配置。
14. 数据库的配置管理
主要是基于测试环境的变化,我们所使用数据库也是针对不同的环境的,我们这个时候也需要同环境一样进行环境的切换。
- 开发环境的数据库
- 集成环境的数据库
- 测试环境的数据库
- 预发布环境的数据库
- 数据库配置:
- 数据源配置[]
15. 数据库的操作管理
指框架提供的框架对数据库的相关操作。
增删查该操作。 数据连接 数据初始化 ,数据清理,数据检查等
16. 环境的切换
指框架提供快速切换环境的能力,一个配置项的修改即可达到环境切换
- 切换Mock环境
- 切换测试环境
17. 框架提供的测试用来编写流程规范
指的是框架要求的一些流程规范,编写规范,文件的存放位置等。
测试数据的命名 测试脚本的存放位置
- 测试脚本的命名
18. 同其他工具的结合
比如同缺陷工具,测试平台,持续集成等的结合,都需要考虑下。
转载于:https://www.cnblogs.com/woniukanshu/p/7724829.html
自动化框架应该具备的要点相关推荐
- 4行代码,让app自动化框架支持 webview 混合应用操作
移动端 app 自动化框架很多,但是有一些框架因为不支持混合应用测试,一直没有完全流行.比较典型的是经典的 Python 框架 uiautomator2, 这个框架简单好用,没有 appium 那样复 ...
- android主流开源自动化框架(monkeyrunner,robotium,uiautomator
2019独角兽企业重金招聘Python工程师标准>>> android自动化框架: Uiautomator: 优点:可以对所有操作进行自动化,操作简单:缺点:Android版本需要高 ...
- CYQ.Data 从入门到放弃ORM系列:开篇:自动化框架编程思维
前言: 随着CYQ.Data 开始回归免费使用之后,发现用户的情绪越来越激动,为了保持这持续的激动性,让我有了开源的念头. 同时,由于框架经过这5-6年来的不断演进,以前发的早期教程已经太落后了,包括 ...
- 理想的互联网服务后台框架的九个要点
理想的互联网服务后台框架的九个要点 对于互联网服务后台团队,开发框架的选择是非常关键的一个问题,多年的海量服务经验和教训使得我们团队深刻的认识到: 要尽早规范团队的开发服务框架,避免到了后期,各种开发 ...
- android自动化工程师,自动化工程师应具备哪些技能
方向永远比努力更重要,找准了方向,比努力更重要.比如说你去超市当个收银员,第一年老板给了2800,第二年给你涨到3200,可能五年后可能你是你跳槽去了二姨家超市给了你四千.但是做了自动化测试,通过两年 ...
- java接口自动化(三) - 手工接口测试到自动化框架设计之鸟枪换炮
1.简介 上一篇宏哥介绍完了接口用例设计,那么这一章节,宏哥就趁热打铁介绍一下,接口测试工具.然后小伙伴们或者童鞋们就可以用接口测试工具按照设计好的测试用例开始执行用例进行接口手动测试了.关于手动测试 ...
- java接口自动化监控_java接口自动化(三) - 手工接口测试到自动化框架设计之鸟枪换炮...
1.简介 上一篇宏哥介绍完了接口用例设计,那么这一章节,宏哥就趁热打铁介绍一下,接口测试工具.然后小伙伴们或者童鞋们就可以用接口测试工具按照设计好的测试用例开始执行用例进行接口手动测试了.关于手动测试 ...
- Ai-Bot RPA自动化框架
Ai-Bot是Android+Windows平台上的node.js自动化框架. 1.跟python的区别?跟uipaht uibot 其他框架的区别? 1) VS python 相同点:Ai-Bot基 ...
- python自动化工业_五大python自动化框架学习
1.Robot Framework 作为最重要的Python测试框架之一,Robot Framework主要被用在测试驱动(test-driven)类型的开发与验收中.虽然是由Python开发而来,但 ...
- 接口自动化 ------ 快速搭建接口自动化框架
接口自动化框架要搭成什么,里面的内容究竟应该有多少? 这个问题没有标准答案,因为这要取决于你的项目,以及你想要用框架来解决什么问题等多种因素. 当然了,这里也就不展开讨论了,还是回到接口自动化这个点, ...
最新文章
- 领域驱动设计:软件核心复杂性应对之道
- linux中sed的基本用法,linux sed用法
- word文字中带有数学公式的行间距设置
- GPU上的相似性检查(PNSR和SSIM)
- 云笔记项目-补充JS面向对象编程基础知识
- Java Spring DI之旅
- GB/T 17626 电磁兼容 试验和测量技术系列标准【归纳】
- 【CodeForces - 527C】Glass Carving(线段树或者SBT或者set)
- python考试搜题-大学mooc用Python玩转数据章节考试答案
- Android出现:java.lang.NoClassDefFoundError: android/os/PersistableBundle
- sicily 1022. Train Problem
- [翻译] ios-image-filters
- Installation openQRM
- pinphp3.0后台系统权限管理的bug
- matlab幂级数展开的收敛区间,常见函数的幂级数展开式收敛区间的快速确定法.pdf...
- android 7.0 壁纸设置,android7.0怎么换锁屏壁纸
- javascript成神之路(1):如何编写高质量的js代码
- 集团公司预算控制与网上费用报销系统
- python获取摄像头型号_python opencv设置摄像头分辨率以及各个参数的方法_python
- python 权限认证 impala_python操作具有kerberos认证的hive(impala)
热门文章
- php之使用file_get_contents对百度orc进行文字识别(二维码识别同理)--base64编码方式(解决image format error)
- Linux chapter 4
- 一次慢查询暴露的隐蔽的问题
- kibana4 分析和搜索仪表板 安装和配置
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_3-3.Vidoe相关接口完善和规范协议...
- 周期性任务计划: Crontab
- 1023. Have Fun with Numbers (20)
- 10.04更新源问题
- 百度前端技术学院---vue动态数据绑定-3
- 一段经典的 Java 风格程序 ( 类,包 )