当我调试程序时,所有3个参与者都被选中,但是当我运行该程序时,第二个参与者就会出错
java.lang.IllegalStateException:找不到网络成员
输入列表具有以下值
public MessagesPage findRecipient(List userRecipient) throws InterruptedException {
int userCount = userRecipient.size();
int index=0;
for( Object tempUser : userRecipient){
WebElement rightUser = null;
SeleniumUtils.waitElementVisible(driver, searchUser);
searchUser.sendKeys(tempUser.toString());
//output element of drop down search user name
By byUserSearchResult = By.xpath("//tbody[@class='js-pages']/tr/td");
//Wait till the user list is available.
new WebDriverWait(driver, 10).until(ExpectedConditions.visibilityOfElementLocated(byUserSearchResult));
List<WebElement> resultTable = driver.findElements(byUserSearchResult);
//The code is failing here for 3rd element in the list
for (WebElement user : resultTable) {
String check = user.getText();
if (check.contentEquals(tempUser.toString())) rightUser = user;
}
if (rightUser == null)
throw new IllegalStateException("The " + tempUser.toString() + " can not be found");
rightUser.click();
}
您需要为每个项目诱使Webdriver等待(elementToBeClickable)。在您的代码中,您需要在rightUser.click();