2016-06-13 41 views
0

我從很久以來一直在使用PageFactory。我也使用@CacheLookup來緩存WebElements。問題是我從未注意到任何測試的快速執行。它始終如一。PageFactory clear driver on driver.quit();

  1. 我該如何驗證它何時進行緩存以及何時不是?
  2. 如何清除緩存,請問driver.quit();是否可以完成這項工作?

回答

0

通常,當您使用@FindBy註釋時,它所做的所有操作都是在DOM上調用findElement。所以像這樣:

`findElement(By.cssSelector("div.v-button.v-button-action"));` 

每次使用此元素時都執行此搜索。當您使用@CacheLookup對元素進行註釋時,將重複使用相同的搜索結果,而不執行其他搜索。

我不知道如何有效地測試此功能的性能,因爲在某些情況下,它可能不會產生非常不同的結果。我猜想,當通過xpath搜索而不是通過css搜索時,差異可能會更加明顯,因爲xpath通常比較慢。也許你可以試試看看看起來如何。

我認爲driver.quit()將做它的工作,因爲它在內部停止webdriver實例並結束會話。