《软件自动化测试成功之道》节选3 - DOM与IE Developer ToolBar

2024-03-26 05:38

本文主要是介绍《软件自动化测试成功之道》节选3 - DOM与IE Developer ToolBar,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《软件自动化测试成功之道》节选3 - DOM与IE Developer ToolBar

 

 

 

 

如果自动化测试工程师仅仅满足于掌握测试工具的使用,是远远不足以解决自动化测试过程中所碰到的种种问题的,下面举个简单的例子:

在某个基于WEB的自动化测试项目中,我们发现需要通过判断Image测试对象的属性来判断某个分组是否处于展开状态,如图2.4所示。

 

 

在这种情况下,主要要看展开和折叠的时候,对象的属性有没有什么变化,不一定是Image有变化,还可以看看前面的小图标是否有变化。我们可以找开发人员了解一下展开和折叠时,究竟有哪些属性发生了变化,但是这无疑会浪费很多宝贵的时间,我们完全可以安装一个小巧的辅助工具IE Developer ToolBar来查看页面的DOM属性。

 IE Developer ToolBar是一个IE插件,安装后可以在浏览器中选择“查看->浏览器栏->IE Developer ToolBar”打开,可以看到页面所有对象的DOM属性。下面以126.com中的“邮箱服务”(如图2.5所示)为例解释一下这个分析和解决问题的过程:

 

 

 

打开IE Developer ToolBar,我们可以看到“邮箱服务”前面的小图标在DOM模型树中的位置,如图2.6所示:

 

 

 

 

可以看到小图标的“class”属性是“clsFd”,“title”属性为“折叠”,由此可以推测:依据title属性可以判断当前是否处于展开状态,我们可以改变界面上的状态,再次用IE Developer ToolBar查看和验证。

在此例中,如果我们依赖QTP的录制过程生成的对象库(Object Repository),会在回放时发生找不到测试对象的错误,这是因为QTP没有正确地把“邮箱服务”前面的小图标对象放到合适的位置中,我们必须手工添加测试对象,调整测试对象在“Test Objects”中的位置,如图2.7所示:

 

 

 

 

接下来,在QTP的专家视图中编辑如下所示的脚本:

Dim obj

Set obj =Browser("网易电子邮箱 - 逍遥3.0Beta").Page("网易电子邮箱 - 逍遥3.0Beta").Frame("index").WebElement("邮箱服务").WebElement("WebElement")

'Msgbox obj.Object.title

If obj.Object.title = "折叠" then

         obj.Click

else

         msgbox "已经处于折叠状态"

end if

运行上述脚本,测试结果如图2.8所示:

 

 

 

由此可见,仅仅掌握测试工具的使用方法,没有深入理解测试工具背后的原理,以及被测试对象的核心内容和工作机制的话,是很难解决一些在自动化测试过程中碰到的实际问题的。同时,在本例中,我们还可以看到,一些辅助工具(例如测试WEB应用程序时,善于使用IE Developer ToolBar之类的DOM分析工具)可以有效帮助我们解决某些问题。

节选自《软件自动化测试成功之道》http://www.china-pub.com/196509

这篇关于《软件自动化测试成功之道》节选3 - DOM与IE Developer ToolBar的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/847446

相关文章

Spring Boot从main方法到内嵌Tomcat的全过程(自动化流程)

《SpringBoot从main方法到内嵌Tomcat的全过程(自动化流程)》SpringBoot启动始于main方法,创建SpringApplication实例,初始化上下文,准备环境,刷新容器并... 目录1. 入口:main方法2. SpringApplication初始化2.1 构造阶段3. 运行阶

从入门到进阶讲解Python自动化Playwright实战指南

《从入门到进阶讲解Python自动化Playwright实战指南》Playwright是针对Python语言的纯自动化工具,它可以通过单个API自动执行Chromium,Firefox和WebKit... 目录Playwright 简介核心优势安装步骤观点与案例结合Playwright 核心功能从零开始学习

Python自动化批量重命名与整理文件系统

《Python自动化批量重命名与整理文件系统》这篇文章主要为大家详细介绍了如何使用Python实现一个强大的文件批量重命名与整理工具,帮助开发者自动化这一繁琐过程,有需要的小伙伴可以了解下... 目录简介环境准备项目功能概述代码详细解析1. 导入必要的库2. 配置参数设置3. 创建日志系统4. 安全文件名处

使用Python进行GRPC和Dubbo协议的高级测试

《使用Python进行GRPC和Dubbo协议的高级测试》GRPC(GoogleRemoteProcedureCall)是一种高性能、开源的远程过程调用(RPC)框架,Dubbo是一种高性能的分布式服... 目录01 GRPC测试安装gRPC编写.proto文件实现服务02 Dubbo测试1. 安装Dubb

Python的端到端测试框架SeleniumBase使用解读

《Python的端到端测试框架SeleniumBase使用解读》:本文主要介绍Python的端到端测试框架SeleniumBase使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录SeleniumBase详细介绍及用法指南什么是 SeleniumBase?SeleniumBase

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2