我想在页面底部的habr.com上切换语言,然后检查语言是否已更改。将出现一个弹出窗口,用于更改语言。但在关闭它之后,我无法与页面上的元素进行交互。我应该怎么做才能使这些项目可用?这是我的代码。
@FindBy(css = "a.js-show_lang_settings")
public WebElement languageSettingsLink;
@FindBy(css = "[for='hl_langs_en']")
public WebElement interfaceEnglishLabel;
@FindBy(css = "[for='fl_langs_en']")
public WebElement publicationEnglishLabel;
@FindBy(css = "[for='fl_langs_ru']")
public WebElement publicationRussianLabel;
@FindBy(css = ".form__footer_lang-settings > button")
public WebElement saveLanguageSettingsButton;
@FindBy(className = "tabs-menu__item-text_active")
public WebElement firstTabHeader;
public void openLanguageSettingMenu(){
languageSettingsLink.click();
}
public void changeLanguage(){
interfaceEnglishLabel.click();
publicationRussianLabel.click();
publicationEnglishLabel.click();
saveLanguageSettingsButton.click();
}然后我想要与页面上的元素进行交互。
assertEquals(mainPage.firstTabHeader.getText(), "Articles");但我得到了
org.opentest4j.AssertionFailedError:
Expected :
Actual :Articles发布于 2021-02-12 16:55:04
您可以使用implicitlyWait等待页面刷新。
你可以试试这个:
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);https://stackoverflow.com/questions/66168444
复制相似问题