小编bri*_*rij的帖子

当数组中有多个峰值时,如何找到峰值元素?

对于具有单个峰值元素的数组,可以使用二分搜索在 o(logn) 中完成,但是如果数组中存在多个峰值元素,我们应该使用什么方法?

---添加更多信息 ---- 峰值元素是比它的邻居更大的元素,例如,看看下面的数组,

[1,3,20,4,1,0,7,5,2]

其中有 2 个峰值,20 和 7。

我们需要设计一种算法来查找该数组中的峰值元素。

java arrays algorithm binary-search

5
推荐指数
1
解决办法
1万
查看次数

使用Page Factory设计模式在Page Object中第二次调用webelement会产生陈旧元素异常

我们有一个带有Page Object和Page Factory设计模式的UI框架.在我的一个Page Object类中,我定义了一个webelement并调用它.在我的测试步骤类中,当这是在一个页面上时,我正在调用此webelement,而当我在另一个页面上时,我再次调用此元素.下面是我的代码的样子

PageObjectClass1:

@FindBy(how=How.XPATH, using="//*[contains(text(),'Successfully')]")
@CacheLookup
public WebElement successMsg;
Run Code Online (Sandbox Code Playgroud)

testStepClass:

//on first page 
PageObjectClass1.successMsg.isDisplayed()

//Then I navigate to some other page and again call this webelement

PageObjectClass1.successMsg.isDisplayed();
Run Code Online (Sandbox Code Playgroud)

在第二次调用它时,webdriver正在给我staleElementException.此xpath是通用xpath,将在每个页面中使用.这肯定存在于DOM中,所以不确定为什么它会给我这个例外?如何在不在每个页面对象类中创建此元素的情况下使用它?

给出的例外情况是:

org.openqa.selenium.StaleElementReferenceException:陈旧元素引用:元素未附加到页面文档

java selenium pageobjects selenium-webdriver staleelementreferenceexception

0
推荐指数
1
解决办法
252
查看次数