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()