簡體   English   中英

有沒有比Selenium中的findElement方法更快的方法來獲取元素?

[英]Is there a faster method to get elements than the findElement method in Selenium?

我目前正在使用Java中的Selenium編寫一些自動化測試,以測試搜索引擎及其在網頁中的結果,但是我注意到findElement調用的運行速度很慢。 在遍歷顯示的結果以確保它們正確顯示(以及其他一些測試)時,我經常使用此調用。

我想知道是否可以使用更快的方法,或者是否還有其他建議可以加快此過程。

示例調用:

   driver.findElement(By.xpath("//section[@id='results']/ul/li[1]/a/h1")).click(); // choose first result
   driver.findElement(By.className("total"));

我想知道如果也許By.xpath功能比其他功能慢如By.className功能。 我對自動測試還比較陌生,但是我覺得我正在運行的測試不應該像它們那樣慢。 任何幫助表示贊賞。 謝謝!

我最終使用了findElements()函數並遍歷了生成的列表。 我需要執行的許多重復性任務是檢查HTML列表中保留的搜索結果的格式。 findElements()很有用,因為它只需要轉到網頁本身(帶有初始調用),然后我在該網頁上執行的所有迭代和操作都可以在內存中執行。

根據https://selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/WebElement.html上的Selenium文檔, findElements()對於檢查元素是否缺失也很有用。 對測試進行更改后,我發現平均速度提高了大約30%(盡管對於一些較小的測試,更改幾乎可以忽略不計...)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM