Seleium自动化测试

Source

多个窗口定位并操作

使用元素定位并完成多窗口操作

from selenium import webdriver
drive=webdriver.Firefox()
#获取58同城的url地址
url="https://bj.58.com/?from=pc_topbar_home&PGTID=0d202409-0000-188f-72dd-c320da1e58e3&ClickID=4"
drive.get(url)
#定位选中租房并点击
ss=drive.find_element_by_xpath(".//*[@id='fcNav']/em/a[1]")
ss.click()
#获取所有窗口的句柄
asd=drive.window_handles
#并根据句柄并切换窗口
drive.switch_to_window(asd[1])
#定位选中昌平并点击
cp=drive.find_element_by_xpath("html/body/div[5]/div[2]/div[2]/dl[1]/dd/a[4]")
cp.click()
#定位选中昌平周边并点击
aa=drive.find_element_by_xpath("html/body/div[5]/div[2]/div[2]/dl[1]/dd/div/a[4]")
aa.click()
#获取所有窗口的句柄
asd=drive.window_handles
#并根据句柄并切换窗口
drive.switch_to_window(asd[1])
#定位选中二手房放并点击
cc=drive.find_element_by_xpath(".//*[@id='nav-container']/ul/li[2]/a")
cc.click()
#获取所有窗口的句柄
asd=drive.window_handles
#并根据句柄并切换窗口
drive.switch_to_window(asd[2])
#定位选中新房放并点击
ee=drive.find_element_by_xpath(".//*[@id='__layout']/div/section/section[1]/div[3]/ul/li[3]/a")
ee.click()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

八大元素定位方式

使用find_element_by_xpath定位元素并输入java

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://www.hao123.com")
ss=driver.find_element_by_xpath(".//*[@id='search']/form/div[2]/input")
ss.send_keys("java")

在这里插入图片描述
使用find_element_by_css_selector定位元素并输入python

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://www.hao123.com")
ss=driver.find_element_by_css_selector(".textInput.input-hook")
ss.send_keys("python")

在这里插入图片描述
使用find_element_by_id定位并输入java

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
ss=driver.find_element_by_id("kw")
ss.send_keys("java")

在这里插入图片描述
使用find_element_by_name定位并输入java123

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
ss=driver.find_element_by_name("wd")
ss.send_keys("java123")

在这里插入图片描述
使用find_element_by_class_name定位并输入java123

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
ss=driver.find_element_by_class_name("s_ipt")
ss.send_keys("java123")

在这里插入图片描述
使用find_element_by_tag_name定位input的标签并输入java123

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://cn.bing.com/")
ss=driver.find_element_by_tag_name("input")
ss.send_keys("java123")

在这里插入图片描述
通过按钮文字内容并点击

from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
ss=driver.find_element_by_link_text("hao123")
ss.click()

在这里插入图片描述