zoukankan      html  css  js  c++  java
  • 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 ")
    

      

  • 相关阅读:
    Vue 静态资源文件下载 以pdf为例
    高德地图POI搜索
    矩阵转置(二维列表行列互换)
    列表动态填加元素
    关于判断值为None的处理
    第2章 小程序项目结构配置
    Python 基础编码风格
    Visual Studio — 模块计算机类型“x64”与目标计算机类型“x86”冲突
    Visual Studio — 无法解析的外部符号的几种可能
    Visual Studio — 包含目录、附加包含目录、库目录、附加库目录、附加依赖项之详解
  • 原文地址:https://www.cnblogs.com/aszeno/p/10376417.html
Copyright © 2011-2022 走看看