![](/img/trans.png)
[英]How does correctly find elements of a webpage with Selenium Webdriver?
[英]How to find “Cursor” position in webpage with Selenium Webdriver?
我剛開始使用 java Script 學習 Selenium Webdriver,我問的問題可能是一個愚蠢的問題。 但是還是想知道有沒有可能。
根據我的問題,請查看以下示例
在任何登錄頁面中,輸入有效的“用戶名”並單擊“登錄”按鈕,它會拋出錯誤消息“請輸入密碼”並且“光標”將位於“密碼”字段中
所以,我們可以通過代碼獲取錯誤信息。 現在,我們如何通過代碼定位或識別網頁中的“光標”位置?
根據定義,任何具有焦點的小部件也具有光標。 因此 driver.switchTo().activeElement() 將返回當前聚焦的 WebElement。 它實際上並沒有改變任何東西,只是返回活動元素。 你可以打電話
expectedElement.equals(driver.switchTo().activeElement());
驗證 expectedElement 是否具有焦點。
嘿 user3313128 使用 Selenium Web 驅動程序庫,只能通過知道您將其移動到的最后一個位置來確定當前位置。
遺憾的是,Javascript 沒有為您提供快速獲取 X 和 Y 的選項。
一個簡單的解決方法是在瀏覽器中簡單地運行一個簡單的功能
async function (){
await this.driver.executeScript(function( ) {
let mouse = { x:0, y:0 }
onmousemove = function(e){ mouse.x = e.clientX, mouse.y = e.clientY }
})
}
此功能將始終在瀏覽器中跟蹤您的鼠標 X 和 Y
然后當您需要知道鼠標的位置時,只需調用此腳本
mouse = driver.executeScript( function (){return mouse})
盡管明智的做法是在每次鼠標移動和 click() 時在服務器端的 JS 中跟蹤所有這些。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.