• selenium + webdriver(python)(二)


    本节知识点:

    • 打印URL
    • 将浏览器最大化
    • 设置浏览器固定宽、高
    • 操控浏览器前进、后退

     

     

    打印URL

     

    上一节讲到,可以将浏览器的title打印出来,这里再讲个简单的,把当前URL打印出来。其实也没啥大用,可以做个凑数的用例。

     

    复制代码
    #coding=utf-8
    
    from selenium import webdriver
    
    from time import sleep

    browser = webdriver.Chrome("C:\python35\Python35\selenium\webdriver\chromedriver.exe")
    url= 'http://www.baidu.com' #通过get方法获取当前URL打印 print ("now access %s" %url) browser.get(url) sleep(2)
    browser.find_element_by_id("kw").send_keys("selenium") browser.find_element_by_id("su").click() sleep(3)
    browser.quit()
    复制代码

     

    其实,我们可以把这用户登录成功后的URL打印,用于验证用户登录成功。

    又或者,我们打印其它信息,比如,一般的登录成功页会出现“欢迎+用户名”,可以将这个信息打印表明用户登录成功。

     

     

    将浏览器最大化

     

    我们知道调用启动的浏览器不是全屏的,这样不会影响脚本的执行,但是有时候会影响我们“观看”脚本的执行。

    复制代码
    #coding=utf-8
    
    from selenium import webdriver
    from time import sleep

    browser = webdriver.Chrome("C:\python35\Python35\selenium\webdriver\chromedriver.exe")
    
    browser.get("http://www.baidu.com")
    sleep(2)
    
    print( "浏览器最大化")
    browser.maximize_window()  #将浏览器最大化显示
    sleep(2)
    
    browser.find_element_by_id("kw").send_keys("selenium")
    browser.find_element_by_id("su").click()
    time.sleep(3)
    browser.quit()
    复制代码

     

     

    设置浏览器固定宽、高

     

    最大化还是不够灵活,能不能随意的设置浏览的宽、高显示?当然是可以的。

    复制代码
    #coding=utf-8
    from selenium import webdriver
    from time import sleep

    browser = webdriver.Chrome("C:\python35\Python35\selenium\webdriver\chromedriver.exe")
    
    browser.get("http://m.mail.10086.cn")
    sleep(2)
    
    print ("设置浏览器宽480、高800显示")
    browser.set_window_size(480, 800)  #参数数字为像素点
    time.sleep(3)
    browser.quit()
    复制代码

    这个需求也还是有的,比如我们通过PC浏览器在访问一下手机网站时,调整浏览器为手机屏幕的宽、高,容易发现一些显示问题。(上面的手机邮箱网站就是笔者测试过的一个产品)

     

     

    操控浏览器前进、后退

     

    浏览器上有一个后退、前进按钮,对于浏览网页的人是比较方便的;对于做web自动化测试的同学来说应该算是一个比较难模拟的问题;其实很简单,下面看看python的实现方式

    复制代码
    #coding=utf-8
    
    from selenium import webdriver
    from time import sleep

    browser = webdriver.Chrome("C:\python35\Python35\selenium\webdriver\chromedriver.exe")
    #访问百度首页 first_url= 'http://www.baidu.com' print ("now access %s" %(first_url)) browser.get(first_url) sleep(2) #访问新闻页面 second_url='http://news.baidu.com' print( "now access %s" %(second_url)) browser.get(second_url) sleep(2) #返回(后退)到百度首页 print ("back to %s "%(first_url)) browser.back() sleep(1) #前进到新闻页 print ("forward to %s"%(second_url)) browser.forward() sleep(2) browser.quit()
    复制代码

    为了使过程让你看得更清晰,在每一步操作上都加了print sleep 

    说实话,这两个功能平时不太常用,所能想到的场景就是几个页面来回跳转,但又不想用get url的情况下。

  • 相关阅读:
    负载均衡
    重写类的Equals以及重写Linq下的Distinct方法
    关于URLEnCode,URLDeCode,Base64,公钥私钥
    JAVA 从头开始<六>
    JAVA 从头开始<五>
    JAVA 从头开始<四>
    JAVA 从头开始<三>
    JAVA 从头开始<二>
    JAVA 从头开始<一>
    ASP.Net MVC OA项目笔记<六>
  • 原文地址:https://www.cnblogs.com/diqitian/p/9773754.html
Copyright © 2020-2023  润新知