测试开发的成长之路 - 自动化一站式平台(UI、接口)
前言
在自动化测试过程中,随着对接的自动化需求不断增加,测试用例数量显著上升,参与自动化测试的人也越来越多,多人协作就会碰到很多问题,包括脚本、数据、版本、项目整合、持续集成等,而且也增加了后期维护的成本。为了能解决这些问题,开发一个自动化管理平台来统一对这些代码、数据、版本、集成进行处理,是保质提效的不错手段。这篇博客,给大家介绍一下本人针对公司的自动化需求开发的自动化管理平台。
平台功能
UI自动化 :
特点:
1、用例支持增删改、维护、调试、结果等等
2、用例实时日志
3、用例定位元素采用po模式
4、用例支持复制功能(可根据项目版本进行多套数据保存)
5、用例调试带日志、截图、生成报错记录
6、用例支持执行脚本浏览器操作回放
7、用例支持局部/全局变量
8、用例支持分布式用户本地浏览器启动(默认服务器启动)
9、用例执行状态下可进行中断用例脚本操作
10、用例可进行注释
11、用例可进行功能用例的描述
12、用例支持多线程、目前可同时进行200个用例并行执行(服务器能力有限)
13、用例脚本支持判断、循环、数组、数据库对接、接口对接等等
14、用例与用例之间可互相进行业务调用
15、测试计划进行版本控制(计划完成时可设置直接将结果发布至钉钉)
16、测试计划结果报告展示
17、支持与jenkins、钉钉、TestLink对接,进行自动化发布流程
接口自动化:
因为接口平台还处在开发阶段,功能还不完善,这里只介绍下大体框架和思路。
整体框架
| 应用 | 工具 |
| 语言 | JAVA |
| 服务端 | spring + springmvc + mybatis + mysql + 第三方jar包(有点多,我就不在这里阐述了,想要具体了解可以联系我) |
| 前端 | JQuery + AJAX + Bootstrap + 第三方框架(具体了解可以联系我) |
UI自动化展示
1、首页(整体的设计结构、用户操作手册、操作占比耗时统计、APP包)


2、元素对象页面

3、用例编写调试界面
用例的增删改页面、测试数据使用变量、定位值使用PO、还有业务互相调用、用例执行过程中可以进行中断和本地浏览器启动
用例还可以根据自己项目本身的环境来定义测试环境、目前浏览器只支持chrome和firefox

用例执行支持多个线程并行执行、日志是实时的、执行完成后自动更新记录日志、截图、结果,结果为failed时会生成操作视频

用例添加界面、每个选择的动作非必填项都被禁止输入、输入框内容可实时放大查看编辑

功能用例编写

根据变量的使用域来执行相应的value

截图和本地浏览器


操作记录统计

多线程并行执行(支持200个同时)

4、用例复制
用例可以根据项目需求进行用例数据存档,因为我这边需求只需要存一份预发布环境的用例数据,所有只有一个

5、UI测试计划
以计划为基础作为版本管理,这个就不多做解释了

6、UI测试计划结果
计划结果完成后的结果展示页


7、钉钉机器人

8、钉钉报告展示
持续集成、持续发布,因为我们公司是自动化发布的流程、我的平台计划完成后会在指定的项目组发送自动化结果(自动化发布流程你们可以去问下自己公司的运维)

接口自动化展示

视频演示
测开道路真不易,大家一起努力加油!!!
测试开发的成长之路 - 自动化一站式平台(UI、接口)的更多相关文章
- 测试,测试开发,QA,QM,QC--------- 测试之路勿跑偏
测试,测试开发,QA,QM,QC可能是测试行业里的细分角色了,加了不少群学习,看到不同人有对自己不同的角色定位.我也做了这挺长时间的测试,也和大部分测试同胞一样,为了一份好的工作学习各种各样的技术,但 ...
- [转]web高级开发的成长之路
读了这篇文章之后感觉蛮受启发的,在此分享一下,献给和我一样处于困惑的朋友. 正文如下: 本人也是coding很多年,虽然很失败,但也总算有点失败的心得,不过我在中国,大多数程序员都是像我一样,在一直走 ...
- C#微信开发小白成长教程一(公众平台的工作原理与调试环境部署,附视频)
黑夜给了我黑色的眼睛,我决定录视频到天明.半年前的现在,我还在苦逼着加着班,半年后的今天我依旧苦逼着加着班.不过现在的是为自己加班,作为一个资深程序小白,一个月前我光荣的成了一个不称职的资本家,不称职 ...
- 《自动化平台测试开发-Python测试开发实战》新书出版了
首先 第一本书,当初在百度阅读初步写了个电子版,刚一上线不久即收到了数百位读者朋友阅读收藏购买,于是顺利成章就出版了纸质书. <软件自动化测试开发>认真看过的读者应该都知道,介绍的主要是自 ...
- 测试开发实战[提测平台]19-Echarts图表在项目的应用
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 在图表统计展示方面,笔者目前使用过的两种开源,分别是 Echats 和 G2Plot 组件,从个人使用上来讲前者应用更广.自定义开发更灵活 ...
- 测试开发实战[提测平台]20-图表G2Plot在项目的实践实录
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. G2Plot项目应用 上一篇<提测平台19-Echarts图表在项目的实践>讲解了Echarts的图表应用,此篇来看下开箱即用 ...
- 2020年第二期《python接口自动化+测试开发》课程,已开学!
2020年第二期<python接口自动化+python测试开发>课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29 ...
- Python测试开发-浅谈如何自动化生成测试脚本
Python测试开发-浅谈如何自动化生成测试脚本 原创: fin 测试开发社区 前天 阅读文本大概需要 6.66 分钟. 一 .接口列表展示,并选择 在右边,点击选择要关联的接口,区分是否要登录, ...
- 广州CVTE招聘-测试开发工程师
内推邮箱:keweisheng@cvte.com 地点:广州 公司简介 CVTE成立于2005年,总部位于广州科学城,旗下设有多家独立的子公司,在香港设有全球服务中心,在国内设有21个营销服务中心和近 ...
随机推荐
- js 中 函数的返回值问题
var result=''; function searchByStationName( address ) { // map.clearOverlays();//清空原来的标注 var keywor ...
- oracle整理
1.安装oracle数据库2.创建数据库实例(可选)3.创建用户.角色.授权(可选) 查询数据库名:select name,dbid from v$database;查询实例名 :select ins ...
- IF()判断变量是否为空
一 变量是字符串,判断为空 第一种:strs == null string strs = "test"; if (strs == null) { //这里是为空的字符串,返回你指定 ...
- es6 Set 和Map 数据结构
ES6提供了新的数据结构Set,它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个数据结构,用来生成Set 数据结构. const s = new Set(); [2,3,5,4 ...
- Jquery中数值求和及根据余数改变对应的数值样式
Jquery内容 <script type="text/javascript"> $(function () { var num = 0; $(".box o ...
- 开发和调试第一个 LLVM Pass
1. 下载和编译 LLVM LLVM 下载地址 http://releases.llvm.org/download.html,目前最新版是 6.0.0,下载完成之后,执行 tar 解压 llvm 包: ...
- mysql 主主架构,多入口 互为备份
,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果是双主或者多主,就会增加mysql入口,增加高可用.不过多主需要考虑自增长ID ...
- STM32JTAG口用作普通IO的配置
使用Jlink向STM32烧录程序时,需要使用6个芯片的引脚(以STM32F103C8T6为例),分别是PB4/JNTRST.PB3/JTDO.PA13/JTMS.PA14/JTCK.PA15/JTD ...
- spark----词频统计(一)
利用Linux系统中安装的spark来统计: 1.选择目录,并创建一个存放文本的目录,将要处理的文本保存在该目录下以供查找操作: ① cd /usr/local ②mkdir mycode ③ cd ...
- python逻辑判断 () not and or
python逻辑判断 () not and or 优先级关系:()>not>and>or 运算符示意 not –表示取反运算. and –表示取与运算. or –表示取或运算. or ...