zoukankan      html  css  js  c++  java
  • Python_selenium之窗口切换(二)

    Python_selenium之窗口切换(二)
    一、思路拆分
    1. 之前有介绍窗口切换,这里加上断言部分
    2. 这里还是以百度新闻为例,获取百度新闻网址http://news.baidu.com/
    3. 同样的获取所有的句柄,然后获取当前的句柄,同之前操作差不多
    4. 最后加上断言部分,page2的信息内容是否包含page1,这里采用assert in语句
    二、测试脚本
    1. 测试脚本如下:
    #coding:utf-8
    from selenium import webdriver
    import time

    driver=webdriver.Chrome()
    driver.maximize_window()
    driver.implicitly_wait(8)

    driver.get("http://news.baidu.com/")
    ele=driver.find_element_by_xpath("//*[@id='pane-news']/div/ul/li/strong/a[contains(text(),'全球')]")
    page1=ele.text
    ele.click()
    handles=driver.window_handles#获取当前浏览器的所有句柄
    for handle in handles:
    if handle != driver.current_window_handle:
    print "switch to second windows",handle
    driver.close()
    driver.switch_to.window(handle)
    page2=driver.find_element_by_xpath("//*[@class='subject']/h2").text
    print "page1.text=",page1
    print "page2.text=",page2
    # if page1==page2:
    # print "test sucess"
    # else:
    # print "test failed"
    try:
    assert page1 in page2
    print "test sucess"
    except Exception as e:
    print "test failed"
    2. 测试结果如下图1所示

    3. 上述测试脚本中,备注部分运用了if语句,但是,定位到百度新闻首页获取好的元素信息与新开的页签下面的信息内容不是完全一致,所以这里运用assert in语句比较合适。

  • 相关阅读:
    一个好的技术管理人员需要知道的几件事
    团队必经的五个阶段以及好团队的七个特征
    作为CTO如何做技术升级
    技术领导画像
    TF-IDF原理
    KNN和K-Means的区别
    图数据库入门
    Hbase和Hive的异同
    谈谈机器学习面试
    关于领导力的理解
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/7965971.html
Copyright © 2011-2022 走看看