[英]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.