基于界面自动化测试框架的发展

自动化测试框架的发展及开发 自动化测试框架的发展,在开展自动化测试工作前,需要相应的自动化测试框架。一个好的自动化测试框架不但影响自动化测试的进程,也决定自动化测试的成败。 阅读详情

我们知道基于界面的软件自动化测试经历了4个发展阶段。

     (1).无框架阶段(即简单的录制/回放)

          在早期,自动化测试并没有框架这一说,自动化测试只是简单的录制/回放,由工具录制并记录操作的过程或数据,并形成脚本。通过对脚本的回放重复人工操作的过程。这种模式脚本与数据混合在一起。站在软件开发的角度来看,这种开发耦合度高,我们知道软件工程的思想,是高内聚低耦合。而简单的录制回放完全违背了这一思想,简单的录制回放,重用性非常低,同时维护成本非常高。

     (2).数据驱动框架阶段

          无框架阶段最大的缺点就是脚本与数据混合在一起。为了解决这一问题,自动化测试框架发展到了数据驱动框架阶段。该框架从数据文件中读取数据,通过参数化的方式将数据文件中读取数据写入到脚本中(好比从数据库中读数据),由于不同的数据对应着不同的测试用例,将脚本与数据彻底地分离,因此提高了脚本的使用率,大大降低了脚本的维护成本。虽然数据驱动框架解决了脚本与数据的问题,但并没有将被测试对象与操作分离。

     (3).关键字驱动框架阶段

          关键字驱动框架是在数据驱动框架的基础上改进的一种框架模型。它将测试逻辑按照关键字进行分解,形成数据文件与关键字对应封装的业务逻辑。主要关键字包括3类:被测试对象(Item)、操作(Operation)和值(Value).用面向对形式将其表现为Item.Operation(Value)。关键字驱动的主要思想是:脚本与数据分离、界面元素名与测试内部对象名分离、测试描述与具体实现细节分离

     (4).混合模型框架阶段

           关键字驱动框架将自动化测试框架带入了一个新的阶段,自动化测试工具QuickTest也很好地使用了该理念,但在实际开展自动化测试的时候,发现测试工具所带来的关键字驱动框架还是无法很好地完成测试任务。该框架虽然将数据与脚本进行了分离,但是如果要更灵活地调用测试用例中的数据或输出测试结果,该框架无法做到;并且如果需要读取其他文件存储格式中的数据时也无法很好地解决。因此,在自动化测试开始的前期,工程师会开发一个符合实际测试的框架来支持后期的测试工作,这就是通常所说的混合模型自动化测试框架。

参考资料:黄文高的 《QTP自动化测试与框架模型设计》

 

关于自动化测试的前期发展历史及未来发展趋势 今天的软件市场完全以消费者为导向,为了保持相关性,产品必须处于不断的准备发版状态。面对不断变化的消费者品味,企业如何确保这一点?自动化测试在其中发挥了重要作用,使测试人员更多地关注维护测试计划并确保测试覆盖全面。本文借此总结一下自动化测试概念、换代历史和未来发展趋势。 自动化测试的概念 广义上来讲,自动化包括一切通过工具(程序)的方式来代替或辅助手工测试的行为都可以看做自动化,包括性能测试工具(l... 阅读详情

相关推荐

Python自动化测试框架

Python自动化测试框架 1 什么自动化测试框架 什么是工具——工具(Tools)类似框架,只是工具屏蔽了底层的代码,提供单独的操作界面,以此供用户操作,比如:Selenium IDE、Postman、QTP、Jmeter、LoadRunner等自动化测试工具。 什么是库——库(Library)是将代码集合成的一个产品,程序员可以用来调用,函数库就是由面向过程的代码组织而成的库,类库就是由面向对...

测试开发之路BeeTester 3567

UI 自动化测试框架:PO 模式+数据驱动 【详解版】

PO(PageObject)设计模式将某个页面的所有元素对象定位和对元素对象的操作封装成一个 Page 类,并以页面为单位来写测试用例,实现页面对象和测试用例的分离。PO 模式的设计思想与面向对象相似,能让测试代码变得可读性更好,可维护性高,复用性高。PO 模式可以把一个页面分为三个层级:对象库层、操作层、业务层。对象库层:封装定位元素的方法。操作层:封装对元素的操作。业务层:将一个或多个操作组合起来完成一个业务功能。

okcross0的博客 7202

Java接口自动化测试框架系列:提升测试效率的自动化测试框架

自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例一步步执行测试,得到实际结果与期望结果的比较。为了节省人力、时间等资源,提高测试效率,便引入了自动化测试的概念。

weixin_67553250的博客 3251

如何打造一个高性能、高效率、高自动化的UI框架

如何打造一个高性能、高效率、高自动化的UI框架?1.什么是好的UI框架?2.如何设计?3.为何设计?4.框架解决方案 1.什么是好的UI框架? MVC? MVVM? 这些代码框架是没有任何问题的,他是对的,但又不完全对。 笔者认为一个UI框架具备的不仅仅是代码层的简洁与低耦合。 更重要的一个也是很容易被忽略的问题,就是UI的性能、效率、自动化。 这三者性能权重是最高的,其次是效率,最后是自动化。 如果一个游戏的UI性能不好,给人直管的感受就是不流畅,顿挫感,掉帧感。 这里有人可能就会有所疑虑,一个UI界面

你只管努力,其他的,交给天意! 2125

基于YOLOv10和自动化测试框架的智能UI检测系统

YOLOv10目标检测模型:负责识别和定位UI界面中的各种元素自动化测试框架:提供测试用例管理、执行和报告生成功能用户友好的交互界面:允许测试人员轻松配置和执行测试pythonimport cv2"""使用YOLOv10检测UI元素""""""执行单个测试用例""""""生成测试报告"""# 报告生成逻辑...

YOLO 491

慕课软件质量保证与测试(习题集)

慕课金陵科技学院.软件质量保证与测试.期末复习.习题汇总0 总目录1 绪论1.1 软件质量保证与测试的产生与发展1.2 软件缺陷,软件错误,软件故障1.3 软件质量保证与测试的意义,原则和挑战1.4 单元测试1.5 课后作业2 软件测试策略2.1 软件测试的模型,过程和生命周期2.2 软件测试的方法和技术2.3 单元测试2.4 课后作业3 黑盒测试3.1 黑盒测试概述3.2 等价类划分测试3.3 边界值测试3.4 错误推测法3.5 判定表驱动法3.6 因果图法3.7 场景法3.8 正交实验法3.9 单元测试

weixin_42473228的博客 5万+

UI自动化-Selenium框架

一、大纲 1. 核心重点(第二章) 2. 提高代码质量,自动化水平(第三、四、五、六章) 3. 项目实战(第七章) 4. 理论及环境与定位(第一章)二、自动化相关理论知识 2.1 自动化 说明:让机器设备代替人为完成指定目标的而过程 优点: 1. 减少劳动力 2. 提高效率(批量生产) 3. 提高产品质量 4. 规格统一标准 二、自动化工具 2.1 主流自动化工具 1. QTP: 收费 支持(支持web、桌面软件自动化) 2. selenium: 免费 开源 只支持web项目 【本阶段学习】 3. Robo

sinian_sinian的博客 974

PT32F030与MT6826S SPI通讯实战:从硬件连接到数据交互全流程解析

本文详细解析了PT32F030与MT6826S通过SPI通讯的全流程,包括硬件连接、电路设计、SPI外设初始化配置以及数据交互协议实现。通过实战案例和代码示例,帮助开发者快速掌握PT32F030与MT6826S的SPI通讯技术,实现精准的角度和速度数据采集。

weixin_29189373的博客 420

常用的 UI 自动化测试框架的介绍、优缺点、使用场景和适用范围

Airtest | 移动端、游戏 | Python | 图像识别、跨平台支持、内置 IDE | 依赖图像识别,Web 支持有限 |以下是常用的 UI 自动化测试框架的介绍、优缺点、使用场景和适用范围,涵盖 **Selenium**、**Appium**、**Airtest** 等框架。1. **Web 应用测试**:推荐使用 Selenium(功能全面)、Playwright(现代化)或 Cypress(速度快,前端友好)。

Zero_pl的博客 2927

STM32与HT7038的高精度电能计量系统设计与实现

本文详细介绍了基于STM32微控制器与HT7038三相电能计量芯片的高精度电能计量系统设计与实现。文章从项目选型出发,深入剖析了硬件电路设计、SPI驱动开发、芯片校准及系统集成等关键环节,为智能电表、能源监控等应用提供了高性价比且稳定的国产化解决方案。

pytorch8learner的博客 389

多智能体强化学习论文——SEAC(NIPS 2020)

存在的问题&研究动机&研究思路 在稀疏奖励的环境下,多智能体的exploration存在效率不足等问题。 在IAC的基础上尝试加入重要性采样,使得每次更新智能体iii的参数时,不再仅仅使用智能体iii的数据,而是使用所有智能体的数据进行智能体iii数据的更新。 对于原始的IAC算法是on-policy的,而SEAC则是off-poligy的。 创新点 在每个智能体iii的actoriactor_iactori​和criticicritic_icritici​的更新过程中,都加入了重要性

我的AI笔记 1206

手把手教你从0到1搭建web ui自动化框架(python3+selenium3+pytest)

-前期准备 -环境 -实战: 从0开始 前期准备 为更好的学习自动化框架搭建,你需要提前了解以下知识: python基础知识 pytest单元测试框架 PO模式 selenium使用 环境 本次我们自动化环境为: mac+python3+selenium3+pytest==6.2.4 (不管是win还是mac,网上环境安装教程很多,参考下安装即可) -实战: 从0开始 接下来我们以这个系统的登陆页面作为demo,开始进行web UI框架搭建: 最开始,我们设计了一个test_login.py文件,里完成了

ke221222的博客 6653

ABAP on HANA/CDS view/AMDP 大乱炖

文章目录1. HANA的三大杀器1.1 内存式数据库1.2 多核架构1.3 列式存储1.3.1 数据压缩1.3.2 并行处理1.3.3 聚集和索引1.3.4 代码下移2. CDS 概念2.1 ABAP 开发环境2.2 OPEN SQL语句2.3 CDS 到底是啥2.4 CDS 类型2.5 创建CDS view3. CDS 实战3.1 Annotation注解3.2 Case 语句3.3 数学计算3.4 字符串表达3.5 货币转换3.6 聚集语句3.7 Join3.8 Union3.9 参数3.10 作为子C

weixin_45689053的博客 4782

基于界面自动化测试框架的4个发展阶段

我们知道基于界面的软件自动化测试经历了4个发展阶段。 (1)无框架阶段(即简单的录制/回放)   在早期,自动化测试并没有框架这一说,自动化测试只是简单的录制/回放,由工具录制并记录操作的过 程或数据,并形成脚本。通过对脚本的回放重复人工操作的过程。这种模式脚本与数据混合在一起。站在软件开发的角度来看,这种开发耦合度高,我们知道软件工 程的思想,是高内聚低耦合。而简单的录制回放完全违背了这一思

相信自己能行,那就一定能行 2344

PCB布局布线要求及多层电路板叠加原则

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考本文主要针对PCB布局布线中的要点进行了总结,并对多层电路板的叠加原则进行了解释。

Ka_wyb的博客 2934

JavaScript(JS)、ECMAScript(ES)和TypeScript(TS)

JavaScript、ECMAScript和TypeScript是现代Web开发中不可或缺的技术。它们各自具有独特的特点和优势,相互补充,共同推动着Web开发的发展。了解它们的概念、特点、应用场景和发展历程,有助于我们更好地掌握和使用这些技术,提高开发效率,实现更高质量和更可靠的Web应用。

u013558123的博客 1718

基于界面自动化测试框架的发展、QTP录制与关键字驱动比较(转)

基于界面的软件自动化测试经历了4个发展阶段。 [b](1).无框架阶段(即简单的录制/回放)[/b] 在早期,自动化测试并没有框架这一说,自动化测试只是简单的录制/回放,由工具录制并记录操作的过程或数据,并形成脚本。通过对脚本的回放重复人工操作的过程。[color=red]这种模式脚本与数据混合在一起[/color]。站在软件开发的角度来看,这种开发耦合度高,我们知道软件工程的思想,是高内聚低...

如果你真的想做一件事,你一定会找到方法; 如果你不想做一件事,你一定会找到借口。 198

【重要内容】敬告读者

由于优快云近期将要搞事情,此专栏建议已购买的用户将内容保存到本地。尚未购买的用户请待9月1日后再决定是否需要购买。如此规则上线,本人将会关闭此专栏。并寻找其他渠道进行发布。

魔落的博客 910

用户界面自动化测试的回归测试框架

1.背景介绍 1. 背景介绍 用户界面自动化测试是软件开发过程中的一个重要环节,它旨在确保应用程序的用户界面正常工作,并满足预期的功能和性能要求。回归测试是自动化测试的一种,它旨在确保在修复缺陷后,应用程序的其他功能仍然正常工作。在这篇文章中,我们将讨论用户界面自动化测试的回归测试框架,以及如何使用它来提高软件质量。 2. 核心概念与联系 在用户界面自动化测试的回归测试框架中,核心概念包括...

AI天才研究院 1105

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

探索 Pytest:一个灵活强大的自动化测试框架

Pytest 是一个用 Python 编写的自动化测试框架,因其简单易用、高度灵活和可扩展性而广受欢迎。简洁易用:Pytest 的语法非常简洁,无需编写冗长的测试类,用户只需使用简单的函数即可实现测试用例。丰富的功能:Pytest 支持参数化测试、插件扩展、fixture 和多种断言方法,大大提升了测试的效率与灵活性。出色的报告功能:Pytest 内置了多种报告机制,可以直观地输出测试结果,方便调试和优化。

dl_dabai的博客 1279

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

如何搭建接口自动化测试框架?

经过了一年的演进,旧的框架也做了一些新的调整,删除了很多冗余的功能,只保留了最基本的接口。

LAMO 401

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

自动化测试框架--驱动篇

一,自动化测试框架的发展 基于界面的软件自动化测试框架和工具的发展大致经历了三个阶段: 1)简单的录制/回放:由工具录制并记录操作的过程和数据形成脚本,通过回放来重复人工操作的过程。在这种模式下数据和脚本混在一起,几乎一个测试用例对应一个脚本,维护成本很高。而且即使界面的简单变化也需要重新录制,脚本可重复使用的效率低。 2)数据驱动 (data driven)的自动化测试:从数据文件读取输入数据,...

南风知我意,吹梦到西洲的博客 455

主流自动化测试框架

三、主流自动化测试框架 桌面程序的工具有:QTP、 AutoRunner web应用的工具有:QTP、AutoRunner、Robot Framework、watir、selenium 手机App自动化测试:后续再分享 由于B/S架构的诸多优势,早几年前大量C/S架构的应用转为B/S结构。从而也推动了web开发与测试技术的发展。这也导致QTP框架的落寞,Selenium框架及Robot Fram...

Ason_haiyu的博客 1万+

自动化测试框架详解

在了解什么是自动化测试框架之前,先了解一下什么叫框架?框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。从框架的定义可以了解,框架可以是被重用的基础平台;框架也可以是组织架构类的东西。其实后者更为贴切,因为框和架本来就是组织和归类所用的。所以自动化测试框架的定义为:由一个或多个自动化测试基础模块、自动化测试管理模块、自动化测试统计模块等组成的工具集合。也可以是一种思想和方法的集合。

qq_48811377的博客 1894

什么是自动化测试框架?常用的自动化测试框架有哪些?

3、框架里面可以为后续扩展的组件提供很多辅助性、支撑性的方便易用的工具,也就是说框架是配套了一些帮助解决某类问题的库(libraries)或工具(tools)。最近看了很多自动化相关的资料,加上自己的一些实践,算是对“框架”有了一些理解,这篇博客,就聊聊自动化框架的一些事吧。针对解决特定问题的软件框架会首先定义问题的边界,进而将相关的软件组件约束在这个边界内,保持框架在解决问题方面上的内聚性。测试结果统计管理功能,每次执行测试的结果统计、分析、对比以及反馈,数据驱动,为软件优化和流程改进,提供参考;

nhb687095的博客 1989
上一篇: 三个重要的事件来看软件测试的重要性和软件测试的行情
下一篇: 黑盒测试用例设计方法
jasonteststudy
博客等级 码龄16年 152粉丝 125原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值