Test Test
Test Test

Reputation: 1

how to locate elements on a different webpage?

I'm new to java and webdriver. My web-applications adds some data to a table on a webpage. If the addition is successful, a new web page is opened and the success message is displayed on the new page. If the addition is not successful, a javascript alert is thrown. After accepting the alertHow do I check the presence of an the message on the new webpage using webdriver?

Upvotes: 0

Views: 69

Answers (2)

Code Enthusiastic
Code Enthusiastic

Reputation: 2847

If I understand the question correctly, after sending the data to the table, if the sending is successful then the window is loaded with a new webpage else an alert appears once you accept the alert the window is loaded.

After sending the data, check for the presence of the alert, if the alert is present then accept it. Next is verifying whether a text is present in the newly loaded webpage or not.

public void isAlertPresent(){
try {
    driver.switchTo.alert().accept();
}
catch ( NoAlertPresentException e ){
}


System.out.println(driver.findElement(By.tagName("body")).getText().contains("Expected Message"));

If the location where the message appears is static then I would suggest you to use a better approach than the above like if an element has that text

WebElement element = driver.findElement(By.id("elementID"));

System.out.println(element.getText().trim().equals("Expected Message"));

Upvotes: 0

Santoshsarma
Santoshsarma

Reputation: 5667

If it is opening in new window you need to switch the control to new window first

Find the logic here to switch the control between windows

After switching the control to new window you can verify whatever you want. Either element or text.

isElementPresent? method logic here .

isTextPresent? method logic here.

Upvotes: 1

Related Questions