selenium--页面元素相关的操作
获取元素的标签和元素大小
from selenium import webdriver
import unittest class Test_BasicInfo(unittest.TestCase):
def test_getBasicInfo(self):
url = 'http://www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
newElement = self.driver.find_element_by_link_text('新闻') # 打印查找到元素的基本信息
print('元素的标签名:', newElement.tag_name)
print('元素的size:', newElement.size) test1 = Test_BasicInfo()
test1.test_getBasicInfo()
结果:
元素的标签名: a
元素的size: {'height': 24, 'width': 26}
获取元素的文本内容
from selenium import webdriver
import unittest
import time class Test_ElementText(unittest.TestCase):
def test_getWebElementText(self):
url = 'http://www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
time.sleep(3) # 获取元素的文本内容
a_text = self.driver.find_element_by_xpath('//*[@class="mnav"][1]').text
print(a_text) test1 = Test_ElementText()
test1.test_getWebElementText()
结果
新闻
获取页面元素的属性
from selenium import webdriver
import unittest class Test_ElementAttribute(unittest.TestCase):
def test_getWebElementAttribute(self):
url = 'http://www.sogou.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
query1 = self.driver.find_element_by_id('query') # 获取搜索输入框的name属性
print(query1.get_attribute('name'))
query1.send_keys('测试开发') # 获取搜索框的value值,既输入框里的文本内容
print(query1.get_attribute('value')) test1 = Test_ElementAttribute()
test1.test_getWebElementAttribute()
结果:
query
测试开发
获取页面的css属性值
from selenium import webdriver
import unittest class Test_ElementCssValue(unittest.TestCase):
def test_getElementCssValue(self):
url = 'http://www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
case = self.driver.find_element_by_id('kw') # 使用value_of_css_property()方法获取元素的css属性值
print('高度:', case.value_of_css_property('height'))
print('宽度:', case.value_of_css_property('width')) test1 = Test_ElementCssValue()
test1.test_getElementCssValue()
结果:
高度: 22px
宽度: 500px
selenium--页面元素相关的操作的更多相关文章
- selenium java maven 自动化测试(二) 页面元素获取与操作
在第一节中,我们已经成功打开了页面,但是自动化测试必然包含了表单的填写与按钮的点击. 所以在第二章中我以博客园为例,完成按钮点击,表单填写 还是以代码为准,先上代码: package com.ryan ...
- selenium页面元素操作(简易版)
介绍一下,这是处理页面元素的基本方法,@selenium 发送文字 element.send_keys(keys_to_send) 单击 element.click() 提交表单 el ...
- Selenium 对元素element的操作举例
前三个用的比较多,模拟用户操作最多的就是点击,输入文本,其他的UI自动化测试中涉及的不多,对判断元素是否存在,断言元素是否被选中,元素被选中后CSS属性是否更改等,还是很有必要的.
- 页面元素定位及操作--xpath
简介: 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档(根)节点.XML 文档是被作为节点树来对待的.树的根被称为文档节点或者根节点. /xxx 页面输出 / ...
- 『心善渊』Selenium3.0基础 — 11、Selenium对元素常用操作
目录 1.Selenium对元素常用操作 2.Selenium对元素的其他操作 1.Selenium对元素常用操作 操作 说明 click() 单击元素 send_keys() 模拟输入 clear( ...
- jQuery 判断页面元素是否存在的代码
在原生的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的. 例如: document.getElementById(& ...
- jQuery基础 -- 如何判断页面元素存在与否
在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的.例如: document.getElementById(&q ...
- jquery判断页面元素是否存在
在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的. 例如: document.getElementById(& ...
- selenium 总结篇,常见方法和页面元素的操作
今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio b ...
- Selenium操作页面元素
转自:http://blog.sina.com.cn/s/blog_6966650401012a7q.html 一.输入框(text field or textarea) //找到输入框元素: Web ...
随机推荐
- 使用thanos管理Prometheus持久化数据
关于thanos的介绍可以参考这篇官方博客的翻译文档,本文不作部署操作介绍.下图是thanos的官方架构图,主要有5个组件: Query:可以近似看作是Prometheus的实现,用于采集其他组件的数 ...
- hbase源码之 compact源码(一)
hbase compact流程较多,这里分章节介绍,首先介绍compact在regionserver中的调用流程,并不会涉及真正的compact读取合并文件的流程,后续介绍. 在regionserve ...
- [完整版]Postgresql 数据库 备份以及恢复的过程
0. 准备工作 linux机器上面 必须安装上pg数据库 然后 需要将 pg的主程序目录 放到环境变量里面去 便于执行命令. 1. 先备份 . 备份目标数据库: pg_dump -h -F c -f ...
- Centos 7.6搭建Skywalking6.5+es6.2.4
软件包版本1.elasticsearch-6.2.4.tar.gz,下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elastics ...
- 快速学会使用Vuex
一.Vuex简介 官方定义 Vuex是一个专门为Vue.js应用程序开的状态管理模式 它采用集中式存储管理应用的所有组件的状态 并以相应的规则保证以一种可预测的方式发生变化 二.应用场景 多个视图依赖 ...
- UI事件定位--HitTest
In computer graphics programming, hit-testing (hit detection, picking, or pick correlation) is the p ...
- Java 函数式编程--流操作
GitHub Page: http://blog.cloudli.top/posts/Java-函数式编程-流操作/ 外部迭代到内部迭代 在使用集合类时,通用的方式是在使用 for 循环集合上进行迭代 ...
- codis集群搭建笔记
一.安装Linux虚拟机 二.安装go运行环境 https://www.cnblogs.com/xmzncc/p/6218694.html wget http://mirrors.flysnow.or ...
- asp.net web 项目 针对aspx和ashx的 IHttpHandlerFactory 开发
ASP.NET Framework处理一个Http Request的流程: HttpRequest-->inetinfo.exe-->ASPNET_ISAPI.dll-->ASPNE ...
- Java 多线程编程——多线程
如果要想在Java之中实现多线程的定义,那么就需要有一个专门的线程主体类进行线程的执行任务的定义,而这个主体类的定义是有要求的,必须实现特定的接口或者继承特定的父类才可以完成. 1. 继承Thread ...