Wednesday, October 29, 2014

Chapter 22- Drag & Drop

Drag & Drop

As a tester we might be in a situation to perform a 'Drag & drop' operation. We will perform a drag and drop operation by picking up a tree grid that is available for us on http://www.keenthemes.com/preview/metronic/templates/admin/ui_tree.html. In the below example, we would like to drag an element 'Disable Node' from 'initially open' folder to 'Parent Node' Folder.
selenium_ide_185
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.interactions.Action;

public class webdriverdemo
{
  public static void main(String[] args) throws InterruptedException
  {
 WebDriver driver = new FirefoxDriver();

 //Puts a Implicit wait, Will wait for 10 seconds before throwing exception
 driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

 //Launch website
 driver.navigate().to("http://www.keenthemes.com/preview/metronic/templates/admin/ui_tree.html");
 driver.manage().window().maximize();
  
  WebElement From = driver.findElement(By.xpath(".//*[@id='j3_7']/a"));
 WebElement To = driver.findElement(By.xpath(".//*[@id='j3_1']/a"));
 Actions builder = new Actions(driver);
 Action dragAndDrop = builder.clickAndHold(From)
   .moveToElement(To)
   .release(To)
   .build();
 dragAndDrop.perform();
 
 driver.close(); 
 
   }
}

Output

After performing the drag-drop operation the output would be as shown below.
selenium_ide_186

No comments: