Search code examples
javaselenium-webdriverautomated-tests

Action class works in debug mode in selenium webdriver


I have written the code and that works well when I run this is debugging mode but when I run it in normal mode then I am getting the following exception

     org.openqa.selenium.NoSuchElementException: no such element: 
     Unable to locate element: {"method":"xpath","selector":".//*[@id='address-0']/span"}

The code I have written is:

    WebElement searchBox  = driver.findElement(By.id("search-input"));
    searchBox.sendKeys("somepostcode");
    Actions actions = new Actions(driver);
    actions.moveToElement(searchBox);
    WebElement address = driver.findElement(By.xpath(".//*[@id='address-0']/span"));
    actions.moveToElement(address);
    actions.click();
    actions.perform();

I am not able to understand where should I put wait.

I am using eclipse IDE. The functionality works like when I put some postcode in the search box it search for some addresses at runtime and the user has to select any address related to the postcode. Ajax has been used to fetch the postcode

Here search box is a textbox.

Please let me know if more information is required.


Solution

  • I have solved this problem by breaking the postcode in two parts

    searchBox.sendKeys("postcodePart1");
    searchBox.sendKeys("postcodePart2");
    

    There must be kind of on change event was calling.