Select from drop down using Webdriver

Select oSelection = new Select(driver.findElement(By.id("sampleID")));

    oSelection.selectByIndex(index)

    oSelection.selectByIndex(index)

    // Or

    oSelection.selectByVisibleText(text)

    oSelection.selectByVisibleText(text)

    // Or

    oSelection.selectByValue(value)

    oSelection.selectByValue(value)

Drag and Drop action with Webdriver

driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 
  WebElement fromElement=driver.findElement(By.id("todrag")); 
  WebElement toElement=driver.findElement(By.id("todrop")); 
     
  Actions builder = new Actions(driver);

1.
builder.dragAndDrop(fromElement, toElement).build().perform();

2.
builder.clickAndHold(fromElement).build().perform();
builder.moveToElement(toElement).build().perform();
builder.release(toElement).build().perform();

3.
builder.dragAndDropBy(fromElement, xoffset, yoffset).perform();
Example: builder.dragAndDropBy(fromElement, -20).perform();

4.
  Action dragAndDrop = builder.clickAndHold(fromElement) 
    .moveToElement(dropElement) 
    .release(toElement) 
    .build();
    dragAndDrop.perform();

Start browser with an extension installed using Webdriver?

final String addOnPath = "C:\\Temp\\addon.xpi";
File AOFile = new File( addOnPath );
FirefoxProfile profile = new FirefoxProfile();
profile.addExtension( AOFile );
WebDriver driver = new FirefoxDriver( profile );


How to interact with hidden elements in Webdriver.

1. WebElement element =driver.findElement(By.id("idElement"));
  ((JavascriptExecutor) driver).executeScript("return arguments[0].getText();", element);
 
2. WebElement element =driver.findElement(By.id("idElement"));
   JavascriptExecutor js = (JavascriptExecutor)driver;
  js.executeScript("arguments[0].click();", element); 
 
3  WebElement element =driver.findElement(By.id("idElement"));
  javascriptExecutor jse = (JavascriptExecutor)driver;
  jse.executeScript("document.getElementsByName('body')[0].setAttribute('type', 'text');");
  element .clear();
  element .sendKeys("text");
 
 
 

Handle File uploading using Webdriver.

We can handle this using java script or by send sendKeys()function:
 
 
1. Using sendKeys():
 
 WebElement upload = driver.findElement(By.id("fileUp"));
        upload.sendKeys("c:/darkbulb.jpg");
        driver.findElement(By.id("submit")).click(); 
 
2. Using Javascript:
 
 WebElement upload = driver.findElement(By.id("fileUp"));
((JavascriptExecutor)driver).executeScript("arguments[0].style.visibility = 'visible';
 arguments[0].style.height = '1px'; arguments[0].style.width = '1px';
 arguments[0].style.opacity =
 1", upload );

How to handle Javascript alerts and prompts with WebDriver?

Use Alert API for this:
 
 
 Get a handle to the open alert, prompt:
Alert alert = driver.switchTo().alert();
// Get the text of the alert or prompt
alert.getText(); 
 // And acknowledge the alert or click "OK"
alert.accept();
 
//Reject the alert or click "NO" 
alert.reject();

Insert text to elements like Div, Span, p tags etc.... [Webdriver]

If user want to insert text to elements like Div, Span, p tags etc....
Need to insert  "innerHTML" using javascript+Webdriver


driver.get("http://virtualbuffer.blogspot.in/");
           String jScript = "var myList = document.
getElementsByClassName(\"post-header\");"
                    +"myList[0].innerHTML=\"YourNumber\";";
                JavascriptExecutor executor = (JavascriptExecutor)driver;
                executor.executeScript(jScript);