有块,其中BaseBlock继承自HtmlElement
@FindBy(css = "article.item")
public class FlatCatalogItem extends BaseBlock<FlatCatalogItem> {}
还有其他块,包括 FlatCatalogItem
@FindBy(xpath = "//div[@id='objects']")
public class SearchResultObjectTabsBlock extends BaseBlock<SearchResultObjectTabsBlock>
{
@FindAll(@FindBy(xpath = "//div[contains(@class,'js-tabs tabs')]/div"))
public List<ButtonWithText> tabHeaders;
@FindAll(@FindBy(xpath = "//*[@id='realty-result-content-list']/article"))
public List<FlatCatalogItem> searchedItems;
}
并且有一个页面,它继承自 BlockPageObject(用于集成 Tith thucydides 的 htmlelements 类)
@DefaultUrl("/realty")
public class FlatCatalogBasePage extends SiteBasePage<FlatCatalogBasePage>
{
public SearchResultObjectTabsBlock searchResultTabs;
}
问题,当调用 SearchResultObjectTabsBlock.searchedItems 时,返回相同元素(第一个找到的元素)的 30 个对象(真实计数)(所有 30 个对象 - 第一个找到的元素)。调用 SearchResultObjectTabsBlock.tabHeaders 时,返回不同元素的真实计数(这是真实行为)
为什么在第一种情况下返回 30 个相同的对象?