selenium--页面元素是否可见和可操作
判断元素是否可见
from selenium import webdriver
import unittest class Test_Display(unittest.TestCase):
def test_getDisplayed(self):
url = 'http:www.baidu.com'
self.driver = webdriver.Chrome()
self.driver.get(url)
div2 = self.driver.find_element_by_id('kw') # 判断元素是否在页面上可见
print(div2.is_displayed()) test1 = Test_Display()
test1.test_getDisplayed()
结果:True
返回结果为True或False,True为可见
判断元素是否可操作
from selenium import webdriver
import unittest class Test_ElementIsEnabled(unittest.TestCase):
def test_getWebElementIsEnabled(self):
url = 'D:\zouzou\hh.html'
self.driver = webdriver.Chrome()
self.driver.get(url) input1 = self.driver.find_element_by_id('input1')
# 判断input1是否可操作
print(input1.is_enabled()) test1 = Test_ElementIsEnabled()
test1.test_getWebElementIsEnabled()
结果为True或False,True是可操作的
判断元素是否已选中
from selenium import webdriver
import unittest class Test_radio(unittest.TestCase):
def test_SelectRadio(self):
url = 'D:\zouzou\hh.html'
self.driver = webdriver.Chrome()
self.driver.get(url) berryRadio = self.driver.find_element_by_xpath('//input[@value="berry"]')
berryRadio.click() # 断言该单选框是否被选中
self.assertTrue(berryRadio.is_selected(), '单选框未被选中') # 如果被选中,重新选择
if berryRadio.is_selected():
watermelonRadio = self.driver.find_element_by_xpath('//input[@value="watermelon"]')
watermelonRadio.click() # 重新选择以后,断言刚才的选项处于未被选中状态
self.assertFalse(berryRadio.is_selected()) test1 = Test_radio()
test1.test_SelectRadio()
is_enabled() 判断元素是否可操作
is_selected() 判断元素是否被选中
selenium--页面元素是否可见和可操作的更多相关文章
- selenium页面元素操作(简易版)
介绍一下,这是处理页面元素的基本方法,@selenium 发送文字 element.send_keys(keys_to_send) 单击 element.click() 提交表单 el ...
- selenium 总结篇,常见方法和页面元素的操作
今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio b ...
- selenium定位页面元素的一件趣事
PS:本博客selenium分类不会记载selenium打开浏览器,定位元素,操作页面元素,切换到iframe,处理alter.confirm和prompt对话框这些在网上随处可见的信息:本博客此分类 ...
- Selenium操作页面元素
转自:http://blog.sina.com.cn/s/blog_6966650401012a7q.html 一.输入框(text field or textarea) //找到输入框元素: Web ...
- 爬虫 selenium+Xpath 爬取动态js页面元素内容
介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如 ...
- 利用PIL和Selenium实现页面元素截图
预备 照张相片 selenium.webdriver可以实现对显示页面的截图: from selenium import webdriver dr = webdriver.Firefox() dr.g ...
- python+selenium页面自动化 元素定位实际遇到的各种问题(持续更新)
1.class属性有空格 (已验证) 当classname 中存在空格的时候,直接使用find_element_by_class_name时,会显示定位失败,此时,需要将classname中的空格替 ...
- selenium:解决页面元素display:none的方法
在UI自动化测试中,有时候会遇到页面元素无法定位的问题,包括xpath等方法都无法定位,是因为前端元素被设置为不可见导致. 这篇博客,介绍下如何通过JavaScript修改页面元素属性来定位的方法.. ...
- Selenium 定位页面元素 以及总结页面常见的元素 以及总结用户常见的操作
1. Selenium常见的定位页面元素 2.页面常见的元素 3. 用户常见的操作 1. Selenium常见的定位页面元素 driver.findElement(By.id());driver.fi ...
- selenium常用命令--操作页面元素及获取元素内容整理
selenium常用命令之操作页面元素及获取元素内容的事件整理 例子: /**id <input type="text" id="phone" name ...
随机推荐
- Python - 批量下载 IIS 共享的文件
1.说明 用 IIS 以WEB形式发布了本地文件夹,提供文件下载,并设置了访问权限:默认下载需要点击一个一个的下载,web界面如下: 3.脚本 执行脚本批量下载文件,会在当前目录创建文件夹,并压缩该文 ...
- js 编译原理
引擎:从头到尾负责整个javaScript 程序的编译过程和执行过程. 编译器: 负责语法分析以及代码的生成. 作用域:负责收集并维护由所有声明的标识符(变量)组成的一系列查询, 并实施一套非常严格的 ...
- CSS属性相关知识
Css选择器 选择器的权重 在css中,哪个选择器的权重高,就走谁的样式. 标签选择器的权重是 1 Class选择器的权重是10 Id选择器的权重是100 行间样式的权重是1000 带有关键字 !im ...
- linux内核树的建立(Ubuntu)
博客地址:http://www.cnblogs.com/zengjianrong/p/3178874.html 1.搜索源码 2.下载源码,下载路径可设为:/usr/src/ 3.解压源码 4.进入源 ...
- C# 1.0 新特性之异步委托(AP、APM)
Ø 前言 C# 异步委托也是属于异步编程中的一种,可以称为 Asynchronous Programming(异步编程)或者 Asynchronous Programming Model(异步编程模 ...
- 【02】Python:数据类型和运算符
写在前面的话 任何编程语言一开始都是从概念出发的,但各种编程语言之间的概念可能又会有差异,所以,老生常谈,我们还是需要从新过一遍 Python 的概念,当然,如果你已经是老司机了,完全可以一晃而过,不 ...
- [转] vue前端异常监控sentry实践
1. 监控原理 1.1 onerror 传统的前端监控原理分为异常捕获和异常上报.一般使用onerror捕获前端错误: window.onerror = (msg, url, line, col, e ...
- Kafka分区分配策略-RangeAssignor、RoundRobinAssignor、StickyAssignor
引言按照Kafka默认的消费逻辑设定,一个分区只能被同一个消费组(ConsumerGroup)内的一个消费者消费.假设目前某消费组内只有一个消费者C0,订阅了一个topic,这个topic包含7个分区 ...
- Linux之《荒岛余生》(三)内存篇
原文:https://juejin.im/post/5c00aee06fb9a049be5d3641 小公司请求量小,但喜欢滥用内存,开一堆线程,大把大把往jvm塞对象,最终问题是内存溢出. 大公司并 ...
- 2019-08-26 linux
1.question:什么是linux? answer:Linux由林纳斯·托瓦兹开发的一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户.多任务.支持多线程和多CPU ...