Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >基于蓝鲸平台实现应用功能自动化拨测

基于蓝鲸平台实现应用功能自动化拨测

作者头像
嘉为蓝鲸
发布于 2018-12-21 02:57:12
发布于 2018-12-21 02:57:12
2.9K0
举报

需求背景

基于蓝鲸平台实现应用功能自动化拨测:

一方面:基于蓝鲸平台可以实现监控和运维平台统一化;

另一方面:市面上的功能拨测都不够开放,而通过蓝鲸平台可以自行修改,自主可控。

主要的功能需求有如下三点:

  1. 系统能根据日常巡检的业务功能检查清单,通过应用自动化巡检及拨测技术,对业务系统相关功能页面的应用性能指标进行巡检分析,并能自动生成巡检报告:包含可用性、用户体验指标(多网络区域)、定位性能故障与瓶颈等;
  2. 实现方式不能通过修改或侵入业务系统代码、接入应用系统API或接入应用数据库方式实现;
  3. 系统能支持灵活接入应用、接入应用功能模块、跨应用功能模块自定义测试场景和流程、执行任务保留审计信息等功能。

系统整体架构

基于蓝鲸平台强大的应用对接和调度能力,集成主流的模拟仿真测试框架Selenium,将各业务应用或管理系统有机集成起来(ESB注册),利用定制化APP实现数据的分析和转换,从而实现应用功能自动化拨测。

架构设计如下:

整体系统架构设计按照以下逻辑实现:

蓝鲸平台

  1. 安装Agent在测试节点上,提供命令管道、文件下发管道和数据上报管道,作为各个网络区域的探针模拟;
  2. 蓝鲸平台具备IT对象接入、脚本编排、数据处理、任务编排、监控、内外部接口管理、系统管理等基础功能,这些基础功能决定了能承载并满足此功能性需求;
  3. 蓝鲸ESB组件:用于注册和统一管理包括各类业务应用和系统模块的接口、中间件、数据库、虚拟化、操作系统、网络、存储及其他各类IT对象;
  4. 开发框架:灵活的开发框架使得系统的扩展性非常高,可定制化程度强。

Selinum框架

  1. Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11)、Mozilla Firefox、Safari、Google Chrome、Opera等,因而可以实现不侵入业务系统的功能性测试;
  2. 测试与浏览器的兼容性:测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上;
  3. 测试系统功能:创建回归测试检验软件功能和用户需求,支持自动录制动作和自动生成Python(蓝鲸用来调度的语言)、 .Net、JavaPerl等不同语言的测试脚本。

SaaS应用

  1. 实现任务调度和管理功能:将蓝鲸平台源系统所有关联的配置进行分析和转换,并基于源系统的各类驱动方式进行作业编排,实现自动化流程;
  2. 实现所需的功能性需求。

通过Selenium输入拨测用例

Selenium是一个用于Web应用程序测试的工具, 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。

基于Selenium可实现如下功能:

  1. 页面解析 该模块将通过多网络区域的客户端Agent模拟爬网,分析html页面、图片、js文件、css样式文件等,并通过自定义http接口请求,仿真用户通过浏览器查询数据、提交表单、功能模块使用等行为,采集信息系统功能模块可访问性、页面的可用率、页面下载时间等应用运行指标数据,将获取的数据上报分析服务器,并进行分析与展示; 同时支持自定义的应用系统访问行为录入,和自定义跨系统功能模块的测试场景和流程。
  2. 脚本录制 模拟用户对应用系统功能模块的访问和使用,将此自定义过程形成录制好的脚本,并完善为可供蓝鲸平台调用的Python代码,实现脚本录制。

如下为重播过程示意图(以嘉为的系统为例):

1、自动化拨测示例截图——打开浏览器进入登录页面;

2、自动化拨测示例截图:自动输入用户名密码;

3、自动化拨测示例截图:自动点击登录进入系统;

4、自动化拨测示例截图:自动点击菜单栏,进入到相应功能界面;

5、自动化拨测结果校验:可以通过测试脚本获取到页面内容进行判断。

如登录成功后,能获取到页面的title(ERP管理系统)或其他标识则证明测试成功。

功能设计

整体功能逻辑架构设计如下:

设计概要描述如下:

1、基于蓝鲸的应用功能自动化拨测,集成蓝鲸自动化运维平台提供的流程集成、自动发现和开发框架等平台层面的功能;

2、基于Selenium提供的自动化测试框架,实现无应用侵入(包括API和数据库)的应用功能拨测行为仿真,页面解析、脚本录入、脚本播放执行;

3、基于蓝鲸开发的应用实现如下功能:

  • 应用管理 实现应用创建、修改、删除、查询,应用属性有:应用名称、测试账号及密码、功能模块;
  • 功能模块管理 创建、修改、删除功能模块,录入功能模块测试脚本,功能模块属性有:所属应用、功能模块、对应脚本;
  • 应用巡检 创建、修改和删除任务,执行任务,设置定时执行,历史趋势对比,周期任务;应用巡检任务:选择应用(默认所有已录入脚本的功能模块一起)、指标(可访问、响应时间、登录时间等);
  • 巡检及测试编排 当需要跨系统功能模块,及内部巡检和测试组件,进行自定义编排时,可根据客户要求进行过程自定义;
  • 任务历史及审计 记录所有测试、巡检的历史记录;任务、操作、人员、时间、对象等信息的审核和留档。

4、基于Selenium实现如下功能:

  • 页面解析 该模块将通过多网络区域的客户端Agent模拟爬网,分析html页面、图片、js文件、css样式文件等,并通过自定义http接口请求,仿真用户通过浏览器查询数据、提交表单、功能模块使用等行为,采集信息系统功能模块可访问性、页面的可用率、页面下载时间等应用运行指标数据,将获取的数据上报分析服务器,并进行分析与展示; 同时支持自定义的应用系统访问行为录入,和自定义跨系统功能模块的测试场景和流程;
  • 脚本录制 模拟用户对应用系统功能模块的访问和使用,将此自定义过程形成录制好的脚本,并完善为可供蓝鲸平台调用的Python代码,实现脚本录制。

5、提供统一展示、数据分析、报表和查询门户。


以上为笔者基于蓝鲸平台上应用功能拨测需求,进行蓝鲸平台+Selenium的技术研究,欢迎探讨交流,谢谢!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-06-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 嘉为科技 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
又一款国产自动化测试平台,开源了!
“时间就是金钱,效率就是生命”,在当下的社会里不仅我们的生活节奏变得越来越快,软件研发上线的节奏也是如此。在如此快节奏的软件开发环境中,高质量的软件测试变得尤为重要。
测试开发技术
2023/08/21
1K0
又一款国产自动化测试平台,开源了!
企业应用运维自动化应该如何设计?
运维的起始点是拿到开发的代码包开始,然后进行资源环境准备、环境搭建、应用发布,以及一些列的运维支撑保障工作;而从运维团队内部来看,大致从技术栈层面分为几类:
嘉为蓝鲸
2020/01/02
1.2K0
企业应用运维自动化应该如何设计?
嘉维蓝鲸的2018,转型、蜕变、收获!嘉维蓝鲸的2019,研运一体强助力!
这一年,蓝鲸平台从自动化运维平台,重新定义为研发运营一体化平台,实现了CI、CD、CO的IT管理全生命周期的打通。
嘉为蓝鲸
2019/01/16
1.5K0
借自动化实现数据库的安全运维和跨界运维
“不想当将军的士兵不是好的战士”、“不想当CIO的DBA不是好的运维”。在每天面临如此多的来自工作量、运维安全、技术更新挑战的同时,我们还需要不断的成长与思考:
嘉为蓝鲸
2018/12/21
3.3K0
【经验分享】银行应用运维平台设计与建设建议
本文主要介绍银行业务的发展趋势、应用架构演进以及在此背景下应用运维面临的挑战和解决方案。文章目录如下,是笔者过去5年作为乙方在多个银行设计和落地应用运维自动化的经验分享,共11000字,阅读时长大约10分钟。
嘉为蓝鲸
2020/05/26
1.7K0
【经验分享】银行应用运维平台设计与建设建议
自动化测试入门:是什么,流程,收益和工具
http://mpvideo.qpic.cn/0bf2jeaaiaaa3eaeb6fj3vpfasodareqabaa.f10002.mp4?dis_k=cc04b07c621debb660c5902
归根落叶
2020/05/15
1.6K0
自动化测试入门:是什么,流程,收益和工具
测试人员必备:常用自动化测试工具
官网:https://software.microfocus.com/en-us/products/unified-functional-automated-testing/overview
测试开发技术
2021/11/04
3.6K0
利用Robot Framework实现多平台自动化测试
基于Robot Framework、Jenkins、Appium、Selenium、Requests、AutoIt等开源框架和技术,成功打造了通用自动化测试持续集成管理平台(以下简称“平台”),显著提高了测试质量和测试用例的执行效率。
测试开发技术
2021/11/04
2.2K0
常用功能自动化测试工具汇总
话说自动化测试方面的工具还是非常的多的,不可能也没有必要查看了所有的测试工具;个人觉得当学习众多同类知识或相关主题时,分几步走: 1、学习所有同类知识的共同理论、原理部分【此为共性】 2、学习所有同类知识的独有特性、技巧部分【此为个性】 3、根据具体的实际场景,适当的运用所学知识的【即运用知识的个性部分去解决特定的问题】 学习自动化测试工具也是这样的,之前不愿意学习太多是怕混淆视听,现在对原有知识已有了一定的固化认识【即了解了基本原理】,也就可以从新学习个性化的东西了;而这一步正是为了以后能够适当运用所掌握的知识,顺利的进行自动化测试任务的开展和实施。其目标达矣!
testwalkman
2020/02/28
2.2K0
自动化运维,先做规划还是先建场景?
随着自动化运维在企业落地的成功案例和场景越来越多,更多的企业都在探索适合自身的自动化运维规划。
嘉为蓝鲸
2018/12/21
1K0
流程驱动的运维自动化在温氏集团的实践-嘉为案例
温氏食品集团股份有限公司(简称“温氏股份”),创立于1983年,现已发展成一家以畜禽养殖为主业、配套相关业务的跨地区现代农牧企业集团。2015年11月2日,温氏股份在深交所挂牌上市(股票代码:300498)。
嘉为蓝鲸
2022/08/14
6870
流程驱动的运维自动化在温氏集团的实践-嘉为案例
国内外优秀好用的自动化测试有哪些?终于整理出来了
随着自动化测试的不断发展,各种自动化测试工具五花八门眼花缭乱,测性能,测兼容,测压力,测功能,测接口纷繁复杂。今天我们主要分析的是国内外使用最多,功能相对而言更全,技术更成熟和先进的几款代表性的自动化功能测试工具的汇总分析。
顾翔
2020/09/23
3.2K0
国内外优秀好用的自动化测试有哪些?终于整理出来了
自动化运维时代,我们该如何是好?
进入2018年以来,IT运维领域最热门的话题可能就是运维自动化,并且这种热门的趋势按照目前的发展态势,应该会继续扩展到2019年、2020年……
嘉为蓝鲸
2018/12/21
2.8K0
Web UI自动化框架对比
自动化化框架简介功能支持编程语言自动生成代码插件环境要求Puppeteer提供建立在DevTools协议(devtools-protocol),控制Chrome或Chromium的高阶API node库。Puppeteer默认无界面运行,不过可以通过配置变为有界面运行Chrome或Chromium• 生成页面 PDF。 • 抓取 SPA(单页应用)并生成预渲染内容(即“SSR”(服务器端渲染))。 • 自动提交表单,进行 UI 测试,键盘输入等。 • 创建一个时时更新的自动化测试环境。使用最新的 JavaS
沈宥
2022/05/10
1.2K0
Web UI自动化框架对比
十大自动化测试工具,你在用哪些?
近年来,随着DevOps和敏捷过程越来越广泛地被采用,软件测试、特别是自动化测试得到了迅速的发展。DevOps希望建立一个快速、频繁、可靠的一体化交付过程;敏捷则要求对交付件质量进行持续、及时、全面的反馈。软件测试作为研发过程中的重要环节,其能否达到快速响应、有效度量,实现过程自动化、系统一体化的目标,对整个组织的研发效率和产品质量将产生深远的影响。
陈哥聊测试
2021/07/29
2.1K0
web自动化测试(2):选择selenium优势?与PhantomJS/QTP/Monkey对比
上篇 《web自动化测试(1):再谈UI发展史与UI、功能自动化测试》,自动化测试工具众多,
周陆军
2021/07/25
2K0
蓝鲸智云的幕后英雄:管控平台
蓝鲸智云,简称蓝鲸,是腾讯游戏运营部“腾讯智营”下的子品牌。它是一套基于 PaaS 的企业研发运营一体化技术解决方案,提供了一个完整的研发、运维、运营的PaaS技术平台。
嘉为蓝鲸
2018/12/21
3.6K0
kylinTOP 测试与监控平台的 WEB UI 界面自动化测试与 selenium 比较
kylinTOP测试与监控平台的WEB UI自动化测试没有使用selenium技术来实现定位,完成是自研技术,由于有多年自动化项目实践经验,以前使用selenium做自动化测试存在自动化测试不稳定以及脚本维护难、自动化测试成本高的痛点,因此自研了自己的自动化测试平台。
jackey422
2019/11/29
1.3K0
web自动化测试入门篇01——框架选择
web自动化测试作为软件自动化测试领域中绕不过去的一个“香饽饽”,通常都会作为广大测试从业者的首选学习对象,相较于C/S架构的自动化来说,B/S有着其无法忽视的诸多优势,从行业发展趋、研发模式特点、测试工具支持,其整体的完整生态已经远远超过了C/S架构方面的测试价值。那么接下来我们就来具体说说web自动化测试的前世今生吧。
Austin_zhai
2022/11/01
1K0
web自动化测试入门篇01——框架选择
推荐一款自动化测试神器,不会写代码也能做!
在软件测试这条道路上,大部分的职业技能发展道路都会是纯业务手工测试→自动化测试→性能测试→安全测试/测试开发。
测试开发技术
2021/07/13
1.3K0
推荐阅读
相关推荐
又一款国产自动化测试平台,开源了!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档