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

相关文章

JavaScript DOM操作与事件处理方法

《JavaScriptDOM操作与事件处理方法》本文通过一系列代码片段,详细介绍了如何使用JavaScript进行DOM操作、事件处理、属性操作、内容操作、尺寸和位置获取,以及实现简单的动画效果,涵... 目录前言1. 类名操作代码片段代码解析2. 属性操作代码片段代码解析3. 内容操作代码片段代码解析4.

Jenkins中自动化部署Spring Boot项目的全过程

《Jenkins中自动化部署SpringBoot项目的全过程》:本文主要介绍如何使用Jenkins从Git仓库拉取SpringBoot项目并进行自动化部署,通过配置Jenkins任务,实现项目的... 目录准备工作启动 Jenkins配置 Jenkins创建及配置任务源码管理构建触发器构建构建后操作构建任务

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

Ubuntu 怎么启用 Universe 和 Multiverse 软件源?

《Ubuntu怎么启用Universe和Multiverse软件源?》在Ubuntu中,软件源是用于获取和安装软件的服务器,通过设置和管理软件源,您可以确保系统能够从可靠的来源获取最新的软件... Ubuntu 是一款广受认可且声誉良好的开源操作系统,允许用户通过其庞大的软件包来定制和增强计算体验。这些软件

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

软件设计师备考——计算机系统

学习内容源自「软件设计师」 上午题 #1 计算机系统_哔哩哔哩_bilibili 目录 1.1.1 计算机系统硬件基本组成 1.1.2 中央处理单元 1.CPU 的功能 1)运算器 2)控制器 RISC && CISC 流水线控制 存储器  Cache 中断 输入输出IO控制方式 程序查询方式 中断驱动方式 直接存储器方式(DMA)  ​编辑 总线 ​编辑

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念