关于Web自动化的一些思考

发现问题更全面,减少测试成本:WEB自动化测试的价值分析! 自动化测试是软件开发中必不可少的一环,WEB自动化测试则是近些年越来越受关注的一个领域。随着WEB技术的不断发展,应用场景也越来越广泛,其自动化测试的价值也逐渐显示出来。但是,随着自动化测试的实践发展,一些瓶颈也逐渐浮现。虽然WEB自动化测试存在一些瓶颈,但是其价值仍然不可替代。WEB自动化测试可以提高测试效率、软件质量以及降低测试成本,可以极大地减少手工测试的盲目性和疏忽,发现软件的问题更加全面。另外,WEB自动化测试也为测试人员和开发人员提供了更加便利的方式来共同维护应用程序的质量。 阅读详情

怎样写好Web自动化测试框架

首先需要解决以下几个问题

1.  登录登出如何衔接

Web自动化其实就是模拟现实中的操作,通过点击页面上的元素、输入数据等来实现页面的跳转和数据的正确性验证,通常情况下Web自动化由很多自动化用例组成,每个用例即可单独运行,也可与其他用例一起连贯运行。这时,如果用例需要用户登录才能执行,那么在运行前就需要校验是否登录,如果登录即可继续运行,如果没有登录必须先登录。

2. 页面之间的衔接

还有一种情形是,有一个用例是专门针对页面3的,但在到达页面3前必须先经过页面1和页面2,这时,在运行这条用例前就需要校验当前页面是否是页面3(通常通过特征元素来判断),如果是页面3那么用例即可继续执行,否则需要先进到页面1和页面2,该用例才能继续运行。

3. 页面元素采用何种方式定位

通常是由具体的产品来决定的,常见的定位方式有id, name, CSS, Xpath,即可使用单一的定位方式,也可混合使用。CSS和Xpath更是提供了丰富的函数,几乎可以定位到页面上任何一个元素。

4. 元素和页面的等待

在运行自动化用例时,诸多因素会影响页面元素的加载时长,如果没有设置合适的等待时间,运行自动化时很可能因为找不到元素或元素不可见而失败。Webdirver里提供了丰富的等待函数可供我们使用。

5. 数据正确性的验证

自动化最重要的检查点除了检查页面的跳转就是数据的正确验证,通过什么样的方式来校验数据的正确性需要根据具体的产品来判断,例如返回的Json数据,页面上的数据显示等。

6. 测试报告

自动化运行完成后,需不要打印测试报告,报告以什么样的方式呈现(HTML, TXT等),运行完后是否需要自动在浏览器打开,报告里需要哪些信息,错误的用例需要不需要截图。


在上述问题解决后,就可以着手下面具体的细节:

1. 采用何种编程语言

例如: Java, Python, JavaScript, Ruby等

2. 使用什么自动化工具

例如: Selenium, Webdriver, QTP等

3. 有哪些现有的,好的概念和方式可供我们使用

例如: PageObject, PageFactory等

4. 对页面上共有的组件,能否提取出来

例如: 下拉框, 滚动条, 复选框, 单选框, 下拉列表, 表格等

5. 需要哪些额外的脚本语言和工具

例如: ant, maven, TestNG等


最后,分析罗列的解决方案,比较优缺点,选择最佳的组合来编写自动化框架



怎样写好Web自动化用例

1. 良好的编程习惯

以Java为例,包名、类名、方法名等都有相应的标准,遵循这些标准不仅能提高我们的书写效率,同时写出的自动化用例也易于阅读和调试。

2. 加注释

加注释,让别人能很好的理解你的用例。

3. 逻辑清晰、容易阅读

上一步操作跟下一步操作之间必要有一定的逻辑联系,且与实际的操作相同,这样的好处是出问题时能很快定位到出错点。

4. 尽量减少重复代码

这,不用赘述。

Web自动化测试的理解 1.自动化测试的定义 软件自动化测试就是通过测试工具或者其他手段,按照测试人员的预定计划对软 件产品进行自动化测试,他是软件测试的一个重要组成部分,能够完成许多手工 测试无法完成或者难以实现的测试工作,正确合理的实施自动化测试,能够快 速,全面的对软件进行测试,从而提高软件质量,节省经费,缩短软件的发布周期。 2.自动化测试的好处 1)缩短测试周期 计算机行业更新迭代快速,大量频繁的回归测试消耗时间,自动化测试能够将重 复的实行交给计算机去做,加快测试速度。 2)避免人为出错 测试人员不可能持续高度集 阅读详情

相关推荐

搭建基于Cursor+MCP+Playwright的Web自动化测试感受

最近很流行,说着说着聊着聊着就实现了web自动化,那这是什么原理呢?这个就是目前比较热门的Cursor+MCP+Playwright的Web自动化测试框架;

software_test010的博客 3755

关于web自动化测试的一些自己的思考和总结

未来工作发展的一些想法。 1.关于自动化测试。 自动化测试,目前可以用selenium可以写出一些符合测试流程的测试脚本。但是还是存在比较多的技术难题。 问题一,验证码,之前学习的验证码识别技术对于加了干扰线之后基本识别失败。所以只能想其他办法,比如屏蔽验证码,需要开发协助,需要开发提供两个文件,替换第一个文件的时候可以屏蔽验证码,替换第二个文件的时候可以恢复正常的验证码功能。或者使

黑面狐 4359

基于自然语言的网页自动化:browser-use/web-ui 原理与实践

网页自动化是提升工作效率、实现流程自动化的关键技术,其核心在于模拟用户操作与页面交互。传统方案如Selenium或Playwright通过代码指令控制浏览器,需要开发者精确编写元素定位与操作逻辑。随着大语言模型(LLM)技术的发展,自动化范式正从命令式向声明式演进,即通过自然语言描述意图,由AI理解并执行操作,这极大地降低了技术门槛。browser-use/web-ui正是这一理念的工程实践,它结合了Playwright的稳定控制能力与LLM的语义理解能力,构建了“观察-思考-行动”的智能循环。该框架特别适

weixin_30920853的博客 287

web自动化测试

自动化: 通过测试工具或者其他手段,按照测试人员的预定计划对软件产品进行自动化测试,正确合理的实施自动化测试能够快速全面的对软件进行测试,从而提高软件质量,节省经费,缩短软件的发布周期 自动化测试的好处: (1)缩短测试周期 自动化能够将重复的实行交给计算机去做 加快迭代测试速度 (2)避免人为出错 测试人员不能持续高度工作 可能会出现人为错误 (3)测试信息存储 自动化测试将测试信息和数据储存在文件中 思路清晰明确 交接方便 (4)轻...

m0_56790878的博客 573

自动化框架设计及落地的那些事

近期做了一个web UI 自动化的项目,框架用的是Python+PyTest+Selenium+BDD。以这个框架为学习的入口,整理出这份文档,想给大家诠释出项目在做UI自动化时的一些实操流程,目的是想给那些想学习自动化框架搭建的同学一些思考方向,当然在实际项目中我们或许会面对更为复杂的场景,并不止我所讲到的这些,欢迎大家一起交流。如果你也不曾接触这个框架,想要练练手,建议可以先:了解一下Python 基础,明白类与对象,封装与继承了解 PyTest 以及 PyTest-BDD框架的运行机制。

笑笑的博客 1020

《Web自动化》基础知识脑图

自动化测试领域正在快速发展。对专业的自动化测试工程师的需求也在增加,谁跟得上当前行业对技术的要求,谁就能站稳脚跟。需掌握的编程技术您需要的语言是:Python、C/C++、HTML、CS...

清菡的博客 494

自动化测试还是手动测试?深度探讨Web自动化测试的利与弊,精准性和可靠性抉择应如何。

随着互联网的飞速发展,Web应用越来越成为我们日常工作和生活中必不可少的一部分。这也就意味着,Web应用的质量和稳定性变得至关重要。而Web自动化测试作为保证Web应用质量的重要手段之一,同样随之变得越来越重要。本文将作者多年的Web自动化测试经验总结成文,介绍Web自动化测试的价值和瓶颈。Web自动化测试作为保证Web应用质量的重要手段之一,有着很多优点,如提高测试效率、测试精度和测试可重复性等。但同时,也存在一些瓶颈,如高成本、可靠性问题和视觉问题等。

Free355的博客 720

长期换衣行人重识别(Long-Term Clothes-Changing Person Reid)数据集汇总

长期换衣行人重识别任务中目前常用的数据集总览目前换衣数据集的主要问题数据集换衣/总体情况集统计DeepChange(2021)LaST(2021)COCAS(2020)VC-Clothes(2020)LTCC(2020)PRCC(2019)Celebrities-reID(2019) 总览 在长期换衣行人重识别的任务当中,数据集的获取(尤其是对于学术环境下)是一个难点,主要的困难有以下几点: 采集大规模的数据集比较困难。 采集不同的衣服的数据集比较困难。 采集不同衣服不同角度的数据集比较困难。 目前也有

KingsMan666的博客 8380

web自动化笔记第4篇:3. 获取元素列表,思考?

2. 键盘操作 2. 警告框处理 2.2 调用方法 frame表单切换、多窗口切换 目标 1. frame表单 窗口截图、验证码处理 1. 截图 1.1 为什么要窗口截图? 1.3 案例-2 注册实例.html 2. 验证码【了解】 2.2 验证码的处理方式 第3章-中级API 第4章-自动化测试-高级篇 UnitTest框架 3. 案例-3 3.1 操作步骤分析: 测试结果-HTML测试报告 2. HTML生成报告方式 附件-断言资料 Web自动化测试 1. 什么是自动化? 1.1 优点: 3. 如何进行

yinuo_432的博客 288

YOLOv8中Bottleneck模块的残差连接机制解析

本文深入解析了YOLOv8目标检测模型中Bottleneck模块的核心设计,重点阐述了其残差连接机制。该机制通过构建一条信息“捷径”,有效缓解了深层网络中的梯度消失问题,稳定了训练过程,并提升了特征提取效率。文章结合代码详细拆解了模块结构,并探讨了其在YOLOv8骨干网络与检测头中的关键作用及参数调优思路。

weixin_29061821的博客 253

VM与欧姆龙PLC通讯设置实战:Fins TCP/UDP协议详解

本文详细解析了VM(VisionMaster)与欧姆龙PLC通过Fins TCP/UDP协议进行通讯的实战设置。内容涵盖网络配置、协议选择(TCP可靠性与UDP实时性)、VM端地址映射与数据点添加、以及数据接收解析流程,并提供了常见错误排查与高级调试技巧,帮助视觉与自动化工程师快速实现稳定可靠的工业通讯集成。

weixin_29172963的博客 329

玩转RobotFramework下的Web自动化测试(二)——关于上篇文章的一些思考

虽然功能上实现了,但是好像逻辑上有问题。测试应该是先有预期结果,然后再去进行操作,将获取的结果同预期结果进行比对。如果是这样的话,就应该预先知道页面应该展示出多少页记录(或多少条记录),也就是不用去判断页面是否有下一页。先去获取数据库中的记录数,如果记录超出一页的显示范围的话,那么就必须要有下一页。这个时候对下一页的判断就成为了case的一个验证点了。而不仅仅是对功能实现的一种判断。     欢

爱卫生的超人 1207

从东南大学906被刷到调剂过程(内含个人感想)

介绍了自己在看到初试成绩,到后期复习以及调剂的全过程,当中也包含了自己的复试中的感想,希望大家理性看待。

Philo的博客 2854

关于自动化测试的一些思考(三)

之前在一个项目组,写了两次粗浅的自动化方面的思考 关于自动化测试的一些思考(一)http://www.cnblogs.com/tobecrazy/archive/2012/12/18/2824248.html 关于自动化测试的一些思考(二)http://www.cnblogs.com/tobecrazy/archive/2013/06/10/3131338.html 这两份都是刚做...

dingquanba6392的博客 109

robosuite 入门教程(一)安装与基本用法

摘要:Robosuite是基于MuJoCo的模块化机器人仿真框架,提供标准化基准测试环境和多样化机器人控制功能。作为ARISE计划的一部分,该框架支持强化学习、模仿学习等算法研究,包含程序化环境生成、多模态传感器、多种控制器及遥操作设备。支持macOS/Linux系统,提供详细安装指南和功能演示脚本,包括随机动作测试、控制器验证、域随机化等。最新版本v1.5新增人形机器人支持、全身控制器和照片级渲染功能,旨在降低机器人学习研究门槛,促进算法开发与评估。

2506_90492529的博客 1267

基于STM32L4XX 、HAL库的TMP144YFFR数字温度传感器驱动应用C语言程序设计

define TMP144_ADDRESS 0x00 // 默认为全局地址,用于单器件或MDA命令。#define TMP144_CMD_READ_TEMP 0x00 // 读取温度寄存器命令。if (temp_raw & 0x800) { // 判断第11位(符号位)

PP_Cottage的博客 91

AI智能体驱动Web自动化:基于browser-use框架的实战指南

Web自动化是提升工作效率、实现流程自动化的关键技术,其核心原理是通过程序模拟用户操作浏览器。传统脚本驱动的方法(如Selenium)在面对动态网页和复杂交互时,维护成本高昂。随着大语言模型(LLM)的发展,AI智能体(Agent)为自动化带来了新的范式——通过“感知-思考-行动”循环,让AI理解页面内容并自主决策操作,显著提升了自动化脚本的适应性和鲁棒性。这种AI驱动的自动化技术,在数据抓取、价格监控、表单填写等RPA(机器人流程自动化)场景中展现出巨大价值。本文以browser-use框架为例,深入探讨

weixin_33868027的博客 479

SAP SEGW 事物码里的 Function Import

开放数据协议(OData)包括标准的 CRUD (创建、检索、更新和删除)操作,这些操作映射到 HTTP 方法的 POST、GET、PUT/MERGE 和 Delete 几类。此外,OData还支持进一步的服务操作:,这些操作可以由HTTP方法GET或POST调用,用于处理不能映射到标准 CRUD 操作的任何内容。通过在数据模型中创建 ,可以在 service Builder 中实现此类额外的服务操作。例如,您可以为以下自定义操作创建函数导入:Work Item confirmation检查航班的可用性虽然

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 995

selenium webui自动化

webui自动化 selenium

谈笑的博客 277

【机械臂视觉抓取从理论到实战】

首先声明一下,此项目是参考B站哈萨克斯坦UP的【机械臂视觉抓取从理论到实战】 此内容为他研究生生涯的阶段性成果展示和技术分享,所有数据和代码均开源。所以鹏鹏我特此来复现一下,我采用的硬件与之有所不同,UP主使用UR5,我实验室采用的是UR3,下面列出相关材料 UR3CB3.12:https://www.universal-robots.cn/cb3/ 【UR3系统升级到CB3.12附带URcap1.05】硬件支持代码支持 jacquard数据集:https://pan.baidu.com/s/1524HrV

vor234的博客 5185

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

java web自动化部署_JavaWeb项目自动化部署脚本

脚本如下:#!/bin/bashecho===============================echoautodeploymentscriptecho===============================project_home=/home/shawock/projectAtomcat_home=/home/shawock/tomcatwar_file_name=...

weixin_36331429的博客 249

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

测试平台开发:自动化测试平台----需求分析

测试开发:95%测试人不会的自动化平台开发!Django+Vue从部署到上线|附完整源码。

cxyll1234的博客 1128

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

测中策---我的Web自动化测试思路

"大不可量,深不可测"---《韩非子·主道》 一个Web系统一旦开发完成,开发人员就可以暂时松一口气了;可是测试呢?后台升级,页面怎么测试?再来一遍?自动化测试或许是一个好的选择,那么怎么组织?按照什么思路进行呢?一方面我摸索着使用VSTS进行自动化测试,摸索了一个路子,正在进行中,或许你有更好的方法,请指点! 本文覆盖一下内容: 1. 定策:先走通 ...

weixin_34319640的博客 72

为什么选择测试/开发程序员这个职业?

为什么选择测试/开发程序员这个职业?于为何选择程序员这份工作,各有各的答案。有的人因为喜欢代码的对话逻辑,有的人因为看中程序员的较高薪资。有人追名,有人逐利,有人为了梦想,还有人仅仅只是想做些实际的小事。你的答案,又是什么?大家为什么从事了程序员这份工作,我先来谈谈自己的情况。我一直认为,如果勉强自己做一件不喜欢的事情,那么很难有动力在今后的工作中继续前进。选择成为一名程序员,大概是在 16、7 岁的时候,那时候父母给我买了第一台电脑(一台 586 电脑),给自己的内心种下了一颗种子。...

m0_70102063的博客 856

软件测试最新这27道Web自动化测试面试题,建议收藏√(1),2024年最新简单聊聊2024年软件测试开发的现状和思考

POM中文字母意思是页面对象模型,POM是一种最近几年非常流行的自动化测试模型,或者说思想。POM不是一个框架,是一个解决问题的思想。采用POM的目的是为了解决前端中UI变化频繁,从而造成测试自动化脚本维护的成本越来越大。POM主要有以下优点:把Web UI对象仓库从测试脚本分离,业务代码和测试脚本分离;每一个页面对应一个页面类,页面的元素写到这个页面类中;页面类主要包括该页面的元素定位,和这些元素相关的业务操作代码封装的方法;

2401_84561461的博客 949
上一篇: Xpath学习总结(一)
下一篇: Xpath学习总结(二)
鲨鲨脆
博客等级 码龄11年 2粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值