selenium-窗口切换】的更多相关文章

前言: Selenium在当前页面调整到新页面时打开了新的窗口,此时就需要跳转到新的窗口去,需要把窗口进行切换. 获取窗口句柄方法: 获取所有: //获取所有窗口句柄,返回的是set类型 driver.getWindowHandles(); 获取当前: //获取当前窗口句柄,返回的是string类型 driver.getWindowHandle(); 窗口切换方法: //窗口切换方法,需传入需求切换窗口的句柄 driver.switchTo().window(); 实例: String url…
有时候,我们打开多个窗口,进行多窗口操作,那么窗口间该如何切换呢? 切换的方法有两个,一个是通过窗口标题来验证,另一个是通过窗口特定的内容来验证,这两个方法都要求得到的标题或内容是唯一的. 用到的相关方法有: 方法 说明 String getTitle() 返回当前窗口的标题 String getPageSource() 获取最后加载页面的源.如果页面在加载后被修改(例如,由JavaScript),则不能保证返回的文本是修改过的页面. String getWindowHandle() 获得能唯一…
当有新窗口出现时,并要在新窗口操作,步骤: 1.产生新窗口 2.获取所有窗口的句柄:driver.window_handles 3.切换函数:driver.switch_to.window(新窗口句柄) 示例: # 产生新窗口的操作xxxxxxxx# 获取所有窗口句柄sleep(1) #预防新窗口打开延迟win_handles = driver.window_handles #返回列表,按照窗口出现的先后顺序添加# 切换到新窗口driver.switch_to.window(win_handle…
selenium表单切换 在做UI自动化,有时候要定位的元素属性在页面上明明是唯一的.却怎么也不执行对元素的操作动作,这时候多半是iframe表单在作怪. 切入表单:iddriver.switch_to_frame("id") #id属性值切入表单 切入表单:namedriver.switch_to_frame("name") #name属性值切入表单 切入表单默认取表单的id或name属性,如果没有id或name属性值,下通过xpath或css定位,然后再将定位对…
selenium测试(Java)--多窗口切换(十三) 如果遇到点击按钮或链接后出现新窗口的情况,就需要使用窗口切换的方法. 本例中就是先打开百度搜索界面,然后利用js打开一个百度新闻界面,然后通过selenium提供的窗口切换方法切换窗口 1 package com.test.windows; 2 3 import java.util.Iterator; 4 import java.util.Set; 5 6 import org.openqa.selenium.By; 7 import or…
浏览器里面支持多窗口打开,例如这样: html里面写了: target="_blank" 造成新打开一个窗口,但是selenium不会自动跳转到新的串口,需要自己切换: # 你打开的浏览器,谷歌 browser = webdriver.Chrome() # 你中间的操作 ... # 获取当前浏览器所有的窗口 handles = browser.window_handles # handles为一个数组:handles = [窗口1,窗口2,...] # 窗口切换,切换为新打开的窗口 b…
定位一组元素 和定位单个元素类似,WebDriver提供了8种用于定位一组元素的方法.定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在单词element后面多了一个s表示复数. find_elements_by_id() find_elements_by_name() find_elements_by_class_name() find_elements_by_tag_name() find_elements_by_link_text() find_elements_by_partia…
Python3 Selenium多窗口切换 以腾讯网(http://www.qq.com/)为例,打开腾讯网,点击新闻,打开腾讯新闻,点击新闻中第一个新闻链接. 在WebDriver中封装了获取当前窗口句柄方法和获取所有窗口句柄的方法以及切换指定句柄窗口的方法: (句柄:英文handle,窗口的唯一识别码) 方法: 1). driver.current_window_handle --> 获取当前窗口句柄 2). driver.window_handles --> 获取所有窗口句柄 3). d…
窗口切换 此代码来源学习后对淘宝操作实践记录: 以下代码在Chrome61和IE11上正常运行,Firefox5.7上运行存在一些问题须改进,应该是火狐不兼容差link_text部分和循环经常报错,在Firefox中建议少使用中文进行定位. current = driver.current_window_handle #获取当前窗口句柄 current2 = driver.current_window_handle #点击跳转后获取跳转后窗口句柄 allchuang = driver.windo…
场景 有时候我们在测试一个web 应用时会出现多个浏览器窗口的情况,在selenium1.0 中这个问题比较难处理.webdriver 提供了相关相方法可以很轻松的在多个窗口之间切换并操作不同窗口上的元素 代码 #!/usr/bin/env python # -*- codinfg:utf-8 -*- ''' @author: Jeff LEE @file: 多窗口处理.py @time: 2018-09-25 10:57 @desc: ''' from selenium import webd…