欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

web自動(dòng)化測(cè)試Selenium點(diǎn)擊元素的常用方法

 更新時(shí)間:2024年09月23日 09:28:44   作者:weixin_41812355  
在Web自動(dòng)化測(cè)試中,Selenium提供多種點(diǎn)擊方法,常用的click()方法通過(guò)選中元素并觸發(fā)點(diǎn)擊事件,若click()方法不穩(wěn)定,可以采用JavaScript執(zhí)行點(diǎn)擊或使用ActionChains類(lèi)模擬鼠標(biāo)點(diǎn)擊,需要的朋友可以參考下

前言

點(diǎn)擊方法在web自動(dòng)化測(cè)試中經(jīng)常用到,下面就來(lái)介紹一下selenium常用和不常用的點(diǎn)擊方法;

1、常用方法

1.1、使用 click() 方法:

這是最簡(jiǎn)單和最常用的方法。通過(guò)選中要點(diǎn)擊的元素,然后使用 click() 方法來(lái)觸發(fā)點(diǎn)擊事件。
示例代碼:

element = self.driver.find_element(By.XPATH,"http://div[@class='ant-select-selection__rendered']").find_elements(By.XPATH, "http://div[@class='ant-select-selection-selected-value' and contains(@title,'全部')]")[1]

element.click()

1.2、使用 JavaScript 執(zhí)行點(diǎn)擊事件:

有時(shí)候使用 Selenium 的 click() 方法可能不夠穩(wěn)定,可以通過(guò)執(zhí)行 JavaScript 代碼來(lái)模擬點(diǎn)擊事件。
示例代碼:

element = self.driver.find_element(By.XPATH,"http://div[@class='ant-select-selection__rendered']").find_elements(By.XPATH, "http://div[@class='ant-select-selection-selected-value' and contains(@title,'全部')]")[1]

self.driver.execute_script("arguments[0].click();", element)

1.3、使用 ActionChains 類(lèi):

ActionChains 類(lèi)提供了模擬用戶行為的方法,其中包括鼠標(biāo)點(diǎn)擊操作。
示例代碼:

element = self.driver.find_element(By.XPATH,"http://div[@class='ant-select-selection__rendered']").find_elements(By.XPATH, "http://div[@class='ant-select-selection-selected-value' and contains(@title,'全部')]")[1]

ActionChains(self.driver).click(element).perform()

這些方法可以根據(jù)具體情況和需求選擇合適的方式來(lái)觸發(fā)點(diǎn)擊事件。通常情況下,推薦優(yōu)先使用 click() 方法,如果出現(xiàn)穩(wěn)定性問(wèn)題,可以嘗試使用 JavaScript 執(zhí)行點(diǎn)擊事件或者 ActionChains 類(lèi)來(lái)解決。

附:selenium點(diǎn)擊懸停元素

#!/usr/bin/env python
# -*- coding: utf-8 -*-
from selenium.webdriver.common.action_chains import ActionChains
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
#找到設(shè)置
element = driver.find_element(By.ID,'s-usersetting-top')
#鼠標(biāo)懸停
ActionChains(driver).move_to_element(element).perform()
#點(diǎn)擊“高級(jí)搜索”
#WebDriverWait(driver,10):在設(shè)置時(shí)間(10s)內(nèi),等待后面的條件發(fā)生。如果超過(guò)設(shè)置時(shí)間未發(fā)生,就拋出異常。等待元素出現(xiàn):visibility_of_element_located
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,'//*[@id="s-user-setting-menu"]/div/a[2]')))
driver.find_element_by_xpath('//*[@id="s-user-setting-menu"]/div/a[2]').click()

總結(jié)

到此這篇關(guān)于web自動(dòng)化測(cè)試Selenium點(diǎn)擊元素常用方法的文章就介紹到這了,更多相關(guān)Selenium點(diǎn)擊元素方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論