专栏首页python 自动化测试Selenium-05-封装常用的方法

Selenium-05-封装常用的方法

前言 selenium常用方法总结

  • 打开浏览器函数,"firefox"、"chrome"、"ie"、"phantomjs"
def choosebrowser(self, browser):    """        打开浏览器函数,"firefox"、"chrome"、"ie"、"phantomjs"        """    try:        if browser == "firefox" or browser == "Firefox" or browser == "ff":            print("start browser browser :Firefox")            driver = webdriver.Firefox()            return driver        elif browser == "chrome" or browser == "Chrome":            print("start browser browser :Chrome")            driver = webdriver.Chrome()            return driver        elif browser == "ie" or browser == "Ie":            print("start browser browser :Ie")            driver = webdriver.Ie('../resources/IEDriverServer.exe')            return driver        elif browser == "phantomjs" or browser == "Phantomjs":            print("start browser browser :phantomjs")            driver = webdriver.PhantomJS()            return driver        else:            print("Not found this browser,You can use 'firefox', 'chrome', 'ie' or 'phantomjs'")    except Exception as msg:        print("启动浏览器出现异常:%s" % str(msg))
  • 打开新的标签页
 def openlable(self, driver, url):
        '''
        打开新的标签页
        :param driver:
        :param url:
        :return:
        '''
        js = 'window.open("%s")' % url
        driver.execute_script(js)
  • 切换标签页
def clooselable(self, driver, number):
        '''
        切换标签页
        :param driver:
        :param number:
        :return:
        '''

        handles = driver.window_handles
        driver.switch_to.window(handles[number])
  • 得到滚动高度
def getscrollheight(self, driver, number):
        '''
        得到滚动高度
        :param driver:
        :param number:
        :return:
        '''
        js = "var q=document.documentElement.scrollTop=" + str(number)
        driver.execute_script(js)
  • 设置滚动高度
def setscrollheight(self, driver):
        '''
        设置滚动高度
        :param driver:
        :param number:
        :return:
        '''
        js = "document.documentElement.scrollTop"
        driver.execute_script(js)
  • scrollby滚动
def setscrollby(self, driver, x, y):
        '''
        x:必传,正数则向右滑动的像素值,负数则向左滑动的像素值
        y:必传,正数则向下滑动的像素值,负数则向上滑动的像素值
        :param driver:
        :param x:
        :param y:
        :return:
        '''
        js = "window.scrollBy(%s,%s)" % (x, y)
        driver.execute_script(js)
  • scrollto滚动
def setscrollto(self, driver, x, y):
        '''
        x:必传,正数则向右滑动的像素值,负数则向左滑动的像素值
        y:必传,正数则向下滑动的像素值,负数则向上滑动的像素值
        :param driver:
        :param x:
        :param y:
        :return:
        '''

        js = "window.scrollTo(%s,%s)" % (x, y)
        driver.execute_script(js)
  • 鼠标悬停事件
def mouseoverhang(self, driver, mouse):
        '''
        鼠标悬停事件
        :param driver:
        :param mouse:
        :return:
        '''
        ActionChains(driver).move_to_element(mouse).perform()
  • input上传文件
 def fileupload(self, pic, filepath):
        '''
        input上传文件
        :param driver:
        :param pic:
        :return:
        '''
        pic.send_keys(filepath)
  • 用js方法输入日期
def datehandle(self, driver, id,date):
        '''
        用js方法输入日期
        :param driver:
        :param id:
        :return:
        '''

        js = 'document.getElementById(%s).value="%s"' % (id,date)
        driver.execute_script(js)

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。

本文分享自微信公众号 - 自动化测试 To share(gh_92d7607a3e04),作者:wencheng

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-10-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • jmeter 环境搭建

    Apache JMeter可用于测试静态和动态资源,Web动态应用程序的性能。它可用于模拟服务器,服务器组,网络或对象上的繁重负载,以测试其强度或分析不同负载类...

    wencheng
  • linux下定时备份mongodb数据

    在linux服务器上通过用shell语言+python完成对mongo库的定时备份

    wencheng
  • 性能测试工具jmeter和locust比较

    Apache JMeter和Locust都是是最受欢迎的性能测试工具。当你想做性能测试的时候,你会选择什么样的测试工具呢?是会选择jmeter?locust?今...

    wencheng
  • 第2章 Posix IPC

    Posix IPC:(用路径名标识) ·Posix消息队列 ·Posix信号量 ·Posix共享内存 ? ? ? O_CREAT:没有指定的文件会新建一个, 如...

    _gongluck
  • 十大企业云备份服务

    使用云备份服务是在不同的设备和异地位置获取一个备份副本的非常简单的方法。此外,这些服务价格非常低廉,许多都提供高级功能,可以增强企业的数据可用性和安全性。

    静一
  • 数据备份及恢复(mongodump/mongorestore)

    1.mongodump创建高保真的BSON文件,mongorestore可以用其恢复数据库。对于小型数据库的备份和恢复,这两个工具非常简单和高效,但对于大型数据...

    拓荒者
  • 【2020HBU天梯赛训练】7-21 新胖子公式

    根据钱江晚报官方微博的报导,最新的肥胖计算方法为:体重(kg) / 身高(m) 的平方。如果超过 25,你就是胖子。于是本题就请你编写程序自动判断一个人到底算不...

    韩旭051
  • 数据分析实例:统计学在数据分析中的应用实例

    最近数据分析真的很火,很多人想学,在大数据这个概念的催生下,数据分析俨然成为了职场的必备技能之一,而很多教育培训机构或者个人也非常会抓住商机,在普遍焦虑的情况下...

    沉默的白面书生
  • 电脑小白如何不被“勒索”

    最近上了各大头条的勒索病毒我想大家都有所耳闻。不幸中招的朋友,请允许我拍拍你的肩膀。设身处地地想一下,眼看就要毕业了,结果论文没了……换了谁都不能忍啊。可是你也...

    Crossin先生
  • 公有云方案咨询中一些常见问题(三)

    大家都知道硬盘是按1000为换算单位(1000KB=1MB),而操作系统是按1024为换算单位(1024KB=1MB),因为我们买回来的1000GB硬盘,格式化...

    希望的田野

扫码关注云+社区

领取腾讯云代金券