要素から値を取得し、事前に収集した値と一致させる必要がある自動化フレームワークを作成しています。さて、問題は、ページがロードされた後に div 値が更新されるため、暗黙的な待機/流暢な待機/Thread.sleep を追加した後でもコードが機能しないことです。しかし、コードをデバッグすると、コードは何の変更も行わなくても正しく機能します。それに関して何をしなければならないかわかりません。
私は新しいユーザーなので、この質問に画像を追加することはできませんが、最初の「合計:値」は「合計:0」であり、入力に時間がかかるため変更されますが、ページが事前に読み込まれるため、タイムアウトは機能しません。
親切に何か提案してください。
String sID = oIPops.getLocator("<value from properties file>");
/*
WebDriverWait wait = new WebDriverWait(driver,40);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id(sID)));
*/
try {
Thread.sleep(10);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String tValue = driver.findElement(By.id(sID)).getText();
System.out.println(""+tValue); // it will print Total : <populated value>
// Extracting the number from the string to match with data I have beforehand
char num = tValue.charAt(7);
String character = "+" + num;
Integer newNum = new Integer(character);
if (value == newNum)
{
logger.info("Sum of Situations on Cluster "+title+ " matches with the total value from situation table");
}
else
{
logger.error("Sum of Situations on Cluster "+title+ " does not match with the total value from situation table");
}