《软件自动化测试成功之道》节选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

相关文章

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

如何基于Python开发一个微信自动化工具

《如何基于Python开发一个微信自动化工具》在当今数字化办公场景中,自动化工具已成为提升工作效率的利器,本文将深入剖析一个基于Python的微信自动化工具开发全过程,有需要的小伙伴可以了解下... 目录概述功能全景1. 核心功能模块2. 特色功能效果展示1. 主界面概览2. 定时任务配置3. 操作日志演示

python多线程并发测试过程

《python多线程并发测试过程》:本文主要介绍python多线程并发测试过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、并发与并行?二、同步与异步的概念?三、线程与进程的区别?需求1:多线程执行不同任务需求2:多线程执行相同任务总结一、并发与并行?1、

Python使用python-docx实现自动化处理Word文档

《Python使用python-docx实现自动化处理Word文档》这篇文章主要为大家展示了Python如何通过代码实现段落样式复制,HTML表格转Word表格以及动态生成可定制化模板的功能,感兴趣的... 目录一、引言二、核心功能模块解析1. 段落样式与图片复制2. html表格转Word表格3. 模板生

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

Python实现自动化接收与处理手机验证码

《Python实现自动化接收与处理手机验证码》在移动互联网时代,短信验证码已成为身份验证、账号注册等环节的重要安全手段,本文将介绍如何利用Python实现验证码的自动接收,识别与转发,需要的可以参考下... 目录引言一、准备工作1.1 硬件与软件需求1.2 环境配置二、核心功能实现2.1 短信监听与获取2.

Python实现Microsoft Office自动化的几种方式及对比详解

《Python实现MicrosoftOffice自动化的几种方式及对比详解》办公自动化是指利用现代化设备和技术,代替办公人员的部分手动或重复性业务活动,优质而高效地处理办公事务,实现对信息的高效利用... 目录一、基于COM接口的自动化(pywin32)二、独立文件操作库1. Word处理(python-d

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

Python实现自动化表单填写功能

《Python实现自动化表单填写功能》在Python中,自动化表单填写可以通过多种库和工具实现,本文将详细介绍常用的自动化表单处理工具,并对它们进行横向比较,可根据需求选择合适的工具,感兴趣的小伙伴跟... 目录1. Selenium简介适用场景示例代码优点缺点2. Playwright简介适用场景示例代码