wangwt123

UI自动化测试-WebDriver类的方法

WebDriver类的方法

方法1:获取当前的网址

方法2:获取当前页面的源代码

方法3:获取当前title

 1 from selenium import webdriver  #包:selenium,模块:webdriver
 2 from selenium.webdriver.common.by import By
 3 import  time as t
 4 driver=webdriver.Chrome()
 5 driver.get("http://www.baidu.com")
 6 
 7 #获取当前的网址
 8 print(driver.current_url)
 9 
10 #获取当前页面的源代码
11 print(driver.page_source)

12 #获取当前title  
14 print(driver.title)  #运行结果:百度一下,你就知道
15 driver.quit()

方法4:页面的前进和后退

 1 from selenium import webdriver  #包:selenium,模块:webdriver
 2 from selenium.webdriver.common.by import By
 3 import  time as t
 4 driver=webdriver.Chrome()
 5 driver.get("http://www.baidu.com")
 6 t.sleep(2)
 7 driver.get("http://www.bing.com")
 8 t.sleep(2)
 9 
10 #后退
11 driver.back()
12 print(driver.current_url)
13 t.sleep(2)
14 
15 #前进
16 driver.forward()
17 print(driver.current_url)
18 driver.quit() 

方法5:多窗口的处理逻辑(很重要!)

 1 from selenium import webdriver  #包:selenium,模块:webdriver
 2 from selenium.webdriver.common.by import By
 3 import  time as t
 4 driver=webdriver.Chrome()
 5 driver.get("http://mail.sina.com.cn/")
 6 
 7 #先获取当前窗口的句柄
 8 nowHandler=driver.current_window_handle 
 9 t.sleep(5)
10 
11 #点击后打开新的窗口
12 driver.find_element(By.LINK_TEXT,"注册").click() 
13 t.sleep(5)
14 
15 #获取所有的窗口句柄
16 allHandlers=driver.window_handles 
17 
18 #针对所有的窗口句柄循环,循环内部判断,在这里,有两个窗口,一个是登录窗口,另一个是注册窗口,如果不是当前的窗口,那么就是新的窗口,那么就需要切换到新的窗口
19 for handler in allHandlers: 
20     if handler!=nowHandler:
21         #切换新窗口
22        driver.switch_to.window(handler)
23         driver.find_element(By.NAME,"email").send_keys("哦系欸")
24         t.sleep(3)
25         driver.close()
26         t.sleep(2)
27 driver.switch_to.window(nowHandler)
28 driver.find_element(By.ID,"freename").send_keys("123")
29 t.sleep(3)
30 driver.quit()

 

posted on 2022-06-28 16:53  DOUBLE快乐  阅读(43)  评论(0编辑  收藏  举报

导航