webdriver高级应用 -更改一个对象界面的属性值
#-*- coding=utf-8 -*-
#更改一个对象界面的属性值
from selenium import webdriver
import unittest def addAttribute(driver,elementObj,attributeName,value):
#封装向页面标签中添加新属性的方法
#调用JavaScript代码页面标签添加新属性,arguments[0]~arguments[2]分别用后面的
#element,attributeName和Value参数值进行替换,并执行该JavaScript代码
#添加新属性的JavaScript代码语法为:element.attributeNmae = Value
#比如 input.name = "test"
driver.execute_script("arguement[0].%s = arguements[1]"%attributeName,
elementObj,value)
def setAttribute(driver,elementObj,attributeName,value):
#封装设置页面对象的属性值的方法
#调用JavaScript代码页面标签添加新属性,arguments[0]~arguments[2]分别用后面的
#element,attributeName和Value参数值进行替换,并执行该JavaScript代码
driver.execute_script("arguements[0].setAttribute\
(arguements[1],arguements[2])",elementObj,attributeName,value) def getAttribute(elementObj,attributeNmae):
#封装获取页面对象的属性值的方法
return elementObj.get_attribute(attributeNmae) def removeAttribute(driver,elementObj,attributeName):
#封装删除页面元素的方法
#调用JavaScript代码页面标签添加新属性,arguments[0]~arguments[2]分别用后面的
# element,attributeName和Value参数值进行替换,并执行该JavaScript代码
driver.execute_script("arguements[0].removeAttribute(arguements[1])",
elementObj,attributeName) class TestDemo(unittest.TestCase): def setUp(self):
#启动浏览器
self.driver = webdriver.Firefox(executable_path="C:\webdriver_firefox_driver") def test_dataPicker(self):
url = "C:\\test1.html"
#访问自定义页面
self.driver.get(url)
#找到页面上标签为input的页面元素
element = self.driver.find_element_by_xpath("//input ")
webdriver高级应用 -更改一个对象界面的属性值的更多相关文章
- eas bos 编辑界面 editUIt 属性值为空
在编辑界面,我们可以正常的保存某个值到数据库,同时列表界面也可以正常显示. 但是当我们再次打开这个编辑界面的时候,该属性值缺无法显示. 通常情况下,通过下面两个方法可以解决 方法一: 在编辑界面重写一 ...
- js 从一个对象中找到属性值相等的集合
getobjs: function(objs, key, value) { var result = []; for (var i in objs) { var obj = $(objs[i]); i ...
- selenium--更改标签的属性值
前戏 在进行web自动化的时候,我们有时需要获取元素的属性,有时需要添加,有时需要删除,这时候就要通过js来进行操作了 实战 from selenium import webdriver import ...
- webdriver高级应用- 改变一个页面对象的属性值
适用于一些无法操作的元素,可以直接改他的属性从而操作,代码如下: #encoding=utf-8 from selenium import webdriver import unittest impo ...
- JS高级---拷贝继承:把一个对象中的属性或者方法直接复制到另一个对象中
拷贝继承:把一个对象中的属性或者方法直接复制到另一个对象中 浅拷贝 function Person() { } Person.prototype.age = 10; Person.prototype. ...
- Selenium WebDriver高级应用
WebDriver高级应用 public class Demo4 { WebDriver driver; // @BeforeMethod:在每个测试方法开始运行前执行 @BeforeMethod p ...
- WPFS数据绑定(要是后台类对象的属性值发生改变,通知在“client界面与之绑定的控件值”也发生改变须要实现INotitypropertyChanged接口)
WPFS数据绑定(要是后台类对象的属性值发生改变,通知在"client界面与之绑定的控件值"也发生改变须要实现INotitypropertyChanged接口) MainWindo ...
- 【MFC】如何在MFC创建的程序中更改主窗口的属性 与 父窗口 WS_CLIPCHILDREN 样式 对子窗口刷新的影响 与 窗体区域绘制问题WS_CLIPCHILDREN与WS_CLIPSIBLINGS
如何在MFC创建的程序中更改主窗口的属性 摘自:http://blog.sina.com.cn/s/blog_4bebc4830100aq1m.html 在MFC创建的单文档界面中: (基于对话框的, ...
- webdriver高级应用- 修改Chrome设置伪装成手机M站
通过更改PC端Chrome浏览器的属性值,将PC端Chrome浏览器设定为手机端尺寸的浏览器,以便模拟手机端的浏览器,并完成各种页面操作. #encoding=utf-8from selenium i ...
随机推荐
- Linux Centos7 环境搭建Docker部署Zookeeper分布式集群服务实战
Zookeeper完全分布式集群服务 准备好3台服务器: [x]A-> centos-helios:192.168.19.1 [x]B-> centos-hestia:192.168.19 ...
- overflow:hidden的使用
(1)overflow:hidden可以用来隐藏溢出的文本内容 给定内容的大小(宽高)超出后自动隐藏 <body> <div class="box"> ...
- git:rebase的原理
git:rebase的原理 前提: 在最近的项目中,我碰到这样一个情况:第一版app上线之后,团队紧接着进行第二版本的开发,由于团队成员对git使用不熟悉,所以开发的每一次提交都是往远端master分 ...
- python3 三行代码基于HTTP2完美实现APNS推送【详解】
第一次做苹果APNS(Apple Push Notification service)推送,关于APNS推送原理以及证书的获取方式网上已经有许多资料,在此不做过多赘述,需要注意的是证书分为测试证书和正 ...
- 【转】推荐!国外程序员整理的Java资源大全
构建 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Maven优于Apache Ant.后者采用了一种过程化 ...
- uni app canvas 不生效
canvas 创建canvas绘图上下文. <canvas style="width: 300px; height: 200px;" canvas-id="firs ...
- Python 任务自动化工具:nox 的配置与 API
英文 | Configuration & API 出处 | nox 官方文档 译者 | 豌豆花下猫@Python猫 Github地址:https://github.com/chinesehua ...
- 关于爬虫的日常复习(9)—— 实战:分析Ajax抓取今日头条接拍美图
- ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'问题的解决
.与limit相关的sql语句作为临时表 select * from 临时表 limit ) as B 缺点:只能查临时表的数据 .可以查原表的数据 select * from test where ...
- Mabitis
Mybatis 一.框架概念: Java框架,一个软件半成品,简单来说就是一个别人搭好的舞台,你来做表演,说白了Java框架就是封装好方便程序员操作的类,使项目的开发更简单,维护起来也更容易. 而My ...