![](/img/trans.png)
[英]How to improve Performance with isTextPresent() equivalent function in selenium webdriver?
[英]selenium webdriver Java: improve “if else” performance?
我正在努力實現以下目標:
我想出了下面的代碼,但這確實很慢。 我不確定是否有更好的方法來實現這一目標? 任何意見將不勝感激!
boolean exists = driver.findElements( By.id("xxx")).size() != 0;
if (exists)
{
driver.findElement(By.id("xxx")).click();
driver.findElement(By.cssSelector("xxx")).click();
}
else
{
driver.findElement(By.cssSelector("xxx")).click();
}
我找出了導致性能下降的原因。 就是這一行:
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
由於該語句,它將等待元素被驗證30秒鍾。
更改為:
driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS);
..現在它就像一種魅力... :)
您用於CSS選擇器的是什么? 通過調整這些設置,您也許可以提高性能。 會使它變慢的另一件事是當頁面具有太多DOM元素時 。
查看CSS選擇器以及正在掃描哪些DOM元素的示例將很有幫助。
例如,如果您的頁面充滿了1000個DIV元素,並且具有如下所示的類:
<div class="smallItem">...</div>
<div class="largeItem">...</div>
<div class="smallItem">...</div>
然后使用這樣的css選擇器:
".smallItem"
要選擇所有DIV元素,它必須掃描每個DOM元素並在class屬性上進行計算。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.