21K+ 次瀏覽
我們可以使用 Selenium 中的 find_elements() 方法獲取頁面中的 href 連結。網頁中的所有連結都在 html 文件中設計,這些連結都包含在錨標記內。要獲取所有具有標記名稱的元素,我們將使用 find_elements_by_tag_name() 方法。它將獲取作為方法引數給出的錨標記名稱的元素列表。如果頁面中沒有匹配的標記名稱,則將返回一個空列表。示例程式碼實現。from selenium import webdriver driver = webdriver.Chrome (executable_path="C:\chromedriver.exe") driver.maximize_window() driver.get("https://www.google.com/") # 識別具有標記名稱的元素 lnks=driver.find_elements_by_tag_name("a") # 遍歷 ... 閱讀更多
11K+ 次瀏覽
click() 和 submit() 函式在功能方面非常相似。但是,存在細微的差別。讓我們討論它們之間的一些區別。submit() 函式僅適用於
3K+ 次瀏覽
我們可以在登入頁面中使用 Selenium 填充使用者名稱和密碼欄位。這被認為是任何應用程式的身份驗證步驟。輸入使用者名稱和密碼後,我們必須單擊登入按鈕。示例程式碼實現。import time from selenium import webdriver driver = webdriver.Chrome (executable_path="C:\chromedriver.exe") driver.get("https://mail.rediff.com/cgi-bin/login.cgi") # 識別使用者名稱、密碼和登入元素 driver.find_element_by_name("login").send_keys("tutorialspoint") time.sleep(0.2) driver.find_element_by_name("passwd").send_keys("pass123") time.sleep(0.4) driver.find_element_by_class_name("signinbtn").click() driver.close如果提供了有效的使用者名稱和密碼,我們將被重定向到應用程式的主頁。輸出閱讀更多
4K+ 次瀏覽
我們可以使用 Selenium 驗證元素是否存在。這可以透過 findElements() 方法來確定。它返回與我們作為引數傳遞給該方法的定位符匹配的元素列表。如果沒有匹配的元素,則將返回一個空列表(大小為 0)。我們不使用 findElement() 方法,因為如果沒有匹配的元素,此方法會丟擲 NoSuchElementException。在發生任何異常的情況下,我們必須使用 try catch 塊來處理它。示例程式碼實現。import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import java.util.List; public class ... 閱讀更多
514 次瀏覽
在測試過程中遇到故障時,通常會捕獲螢幕截圖,以記錄任何偏離預期結果的地方。因此,將螢幕截圖附加到錯誤報告中被認為是必要的步驟。在自動化大量測試用例時,捕獲螢幕截圖對於推斷測試用例失敗的原因至關重要,開發和測試團隊都可以從中獲益。在除錯故障時,透過檢視螢幕截圖可以確定故障是由於指令碼問題還是應用程式中的缺陷。有時我們可能需要捕獲螢幕截圖 ... 閱讀更多
582 次瀏覽
拖放操作是透過滑鼠完成的。當我們將一個元素從一個位置拖動到另一個位置時,就會發生這種情況。當我們嘗試透過簡單的拖放操作將檔案從一個資料夾移動到另一個資料夾時,這是一個常見的場景。Selenium 使用 Actions 類來執行拖放操作。dragAndDrop(source, destination) 是 Actions 類中用於執行拖放操作的方法。該方法將首先對元素執行左鍵單擊,然後繼續單擊以保持源元素。接下來,它將 ... 閱讀更多
有時我們需要對頁面可視區域中不存在的元素執行操作。我們需要向下滾動頁面以到達該元素。Selenium 無法直接執行滾動操作。這可以透過 Selenium 中的 Javascript Executor 和 Actions 類來實現。DOM 可以藉助 Javascript 處理網頁上的所有元素。Selenium 可以藉助 execute_script() 方法執行 Javascript 中的命令。對於 Javascript 解決方案,我們必須將 true 值傳遞給 scrollIntoView() 方法以識別以下物件 ... 閱讀更多
758 次瀏覽
滑鼠懸停在元素上是為了觸發該元素上的事件。如果我們將滑鼠懸停在網頁的選單上,則會出現子選單。因此,此事件在將滑鼠懸停在元素上時被觸發。從上圖可以看出,將滑鼠懸停在“包”選單上時,文字顏色以及工具提示顯示都會發生變化。Selenium 具有 Actions 類,其中包含多個用於滑鼠游標移動的 API。moveToElement() 方法用於執行滑鼠移動。我們必須匯入 org.openqa.selenium.interactions.Actions 以使用 Action 類。除了 moveToElement() 之外,我們還必須使用 perform() 方法 ... 閱讀更多
1K+ 次瀏覽
我們可以在 Selenium 中找到螢幕上顯示特定文字的元素。這是透過 xpath 定位符實現的。xpath 定位符包含一些內建函式,有助於建立自定義 xpath。讓我們考慮以下網頁的一部分:text() - 這是一個內建函式,用於根據螢幕上顯示的文字識別元素。例如,如果我們想從上面的網頁中識別“圖書館”,則使用 text() 的自定義 xpath 應該是:語法//*[text()='圖書館']contains() - 這是一個內建函式,用於根據 ... 閱讀更多
26K+ 次瀏覽
我們可能需要對頁面可視區域中不存在的元素執行操作。我們需要向下滾動頁面以到達該元素。Selenium 無法直接執行滾動操作。這可以透過 Selenium 中的 Javascript Executor 和 Actions 類來實現。DOM 可以藉助 Javascript 處理網頁上的所有元素。Selenium 可以藉助 execute_script() 方法執行 Javascript 中的命令。對於 Javascript 解決方案,我們必須將 true 值傳遞給 scrollIntoView() 方法以識別以下物件 ... 閱讀更多