Web自动化测试 三 ----- DOM对象和元素查找

一、DOM对象

DOM(Document Object Model文档对象模型):将HTML的各种元素映射为JS可访问的对象。
HTML文档中的所有内容都是节点,这些东西在HTML中我们称为元素。

  • 整个文档是一个文档节点
  • 每个HTML元素是元素节点
  • HTML元素的文本是文本节点
  • 每个HTML属性时属性节点
  • 注释是注释节点

DOM时间监听

类似于python中的while循环机制


事件

描述
onclick  用户点击HTML元素
onmouseover  用户在一个HTML元素上移动鼠标
onmouseout 用户从一个HTML元素开移动鼠标
onkeydown  用户按下键盘按键
onload  浏览器已完成页面的加载
onchange  HTML元素改变

二、页面元素的操作

document表示整个HTML页面,window表示HTML页面上面的整个部分(窗口部门)。

1、元素查找

  • e = document.getElementById(“kw”)
  • e = document.getElementsByClassName
  • document.getElementsByName
  • document.getElementsByTagName

说明:e是一个对象

获取文本e.textContent

e.outerhtml 对应HTML的双引号的字符串,可以修改HTML

通过ByID查找获取的是单个元素,后三者获取的值是列表(获取元素用e[0]方式获取),因为ID是唯一的,其他的是有可能不唯一的。

CSS查找:

  • document.querySelector(“#kw”)#表示ID 获取的是单个元素
  • document.querySelectorAll(“#kw”) 获取的也是一个列表

2、元素获取

  • document.title
  • document.URL
  • e = document.getElementById(“kw”)
    •   e.herf
    •   e.maxLength
    •   e.getAttribute("maxLength")

3、元素修改

  • a = document.getElementByTagName(‘html‘)
  • b = a[0]
  • b.innerHTML = ‘hello‘ 改变整个页面
  • c = document.getElementById(“kw”)
  • c.id = ‘qqq‘
  • c.setAttribute(‘id‘, ‘hello‘)

修改中用的做多的是修改disable,readonly和input里的value值

原文地址:https://www.cnblogs.com/qyh0902/p/11184964.html

时间: 2024-10-01 19:20:10

Web自动化测试 三 ----- DOM对象和元素查找的相关文章

jquery的常用操作(操作html页面的Dom对象的元素)

一:页面加载完成时,会执行jquery的方法(不需要等待图片加载完成,只要dom结构加载完成,就执行该方法) //第一种写法: $(document).ready(function() { // 执行体 }); //第二种写法 $(function() { //执行体 }); 二:用jquery获取dom对象,判断该对象是否有内容的两种方法(有返回true,没有返回false) jqObj.text().trim() var jqObj = $(this); if(jqObj.text().tr

Web自动化测试 四 ----- python selenium 八大元素定位

python selenium 八大元素定位方法 前提条件:先要引入webdriver模块,创建一个Chrom浏览器对象,以及打开一个网页(以百度为例). 1 from selenium import webdriver 2 3 driver = webdriver.Chrome() 4 5 driver.get('http://www.baidu.com') 一.ID定位 driver.find_element_by_id('kw') 备注: 此方法相当于JS中的getElementById(

web自动化测试---css方式定位页面元素

css方式定位的方法也有很多,相较于xpath更灵活一点,下面就介绍下使用方法(以百度输入框为例) 1.通过tag来定位,可以写成如下: driver.find_element_by_css_selector('input').click() 这里要说明的是tag为input的必须唯一才能这么写,否则可以用其他方式定位 2.通过id来定位,可以写成如下: driver.find_element_by_css_selector('#kw').click() id前面加个#即可,很简单,也可以和ta

Python3-Selenium自动化测试框架(三)之xpath元素定位

Selenium自动化测试框架(三)之xpath元素定位 xpath元素定位 节点(Node) 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档节点(或称为根节点). 选取节点 XPath 使用路径表达式来选取 XML 文档中的节点或节点集.节点是通过沿着路径 (path) 或者步 (steps) 来选取的. 谓语(Predicates) 谓语用来查找某个特定的节点或者包含某个指定的值的节点. 谓语被嵌在方括号中. 路径表达式: 表达式 描述 / 从根节点

必须记的BOM常用api及DOM对象下常用api

js组成 EcmaScript js基础语法 BOM 浏览器相关 浏览器对象模型. DOM 文档对象模型 操作html BOM window对象 是js顶层对象,全局对象 window属性和方法,都可以省略window直接使用window:是浏览器BOM相关api,基本都是 window对象的 BOM相关api ?alert()   window.alert(); 弹窗prompt(); window.prompt() 弹窗接受用户输入信息confirm()   确认框 返回值:当用户点击确认时

JavaScript的DOM对象和jQuery对象的对比

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>DOM对象'&&'jQuery对象对比</title> <script src="../jQuery库/jquery-3.3.1.js"></script> <script> // DO

RobotFramework自动化测试框架-Selenium Web自动化(三)关于在RobotFramework中如何使用Selenium很全的总结(下)

本文紧接着RobotFramework自动化测试框架-Selenium Web自动化(二)关于在RobotFramework中如何使用Selenium很全的总结(上)继续分享RobotFramework中如何使用Selenium进行自动化测试. 本文章节目录: 1.Get Value 2.Get Webelements和Get Webelement 3.Get Window Titles 4.Go Back 和 Go To 5.Get List Items 6.Get Selected List

锋利的jQuery--jQuery与DOM对象的互相转换,DOM的三种操作(读书笔记一)

1.jQuery对象就是通过jQuery包装DOM对象后产生的对象. 2.jQuery对象和DOM对象的相互转换. 良好的书写风格: var $input=$("input") jQuery获取的对象在变量前面加上$. <1>jQUery对象转成DOM对象,两种方法:[index]和get(index) a:var $cr=$("#cr")    //jQuery对象 var cr=$cr[0]    //DOM对象 b:var $cr=$("

Day53:DOM对象(节点关系、查找、操作)

一.DOM对象 1.什么是HTML DOM HTML  Document Object Model(文档对象模型) HTML DOM 定义了访问和操作HTML文档的标准方法 HTML DOM 把 HTML 文档呈现为带有元素.属性和文本的树结构(节点树) 2.DOM树          画dom树是为了展示文档中各个对象之间的关系,用于对象的导航. 3.DOM节点 3.1 节点类型: HTML 文档中的每个成分都是一个节点. DOM 是这样规定的:    整个文档是一个文档节点 .(docume