Sei sulla pagina 1di 4

package ecommerce.

online;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.Select;

import io.github.bonigarcia.wdm.WebDriverManager;

public class Forms {


static String usrMsgTxt = "//input[@id='user-message']";
static String showMsgBtn = "//button[contains(text(), 'Show Message')]";
static String usrMsg = "//span[@id='display']";
static WebDriver driver;

public static void main(String[] args) throws InterruptedException {


WebDriverManager.chromedriver().setup();
driver = new ChromeDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); //
Implicit wait
//Method call statement
validateSelectEleJQuery( );
Thread.sleep(6000);
driver.quit();
}

//Validate Date Picker


public static void validateTable1() throws InterruptedException {
driver.get("https://www.seleniumeasy.com/test/table-search-
filter-demo.html");
String tableRow = "//table[@id='task-table']/tbody/tr";
List<WebElement> tableRows =
driver.findElements(By.xpath(tableRow));
System.out.println(tableRows.size());
driver.findElement(By.id("task-table-filter")).sendKeys("failed
qa");
tableRows = driver.findElements(By.xpath(tableRow));
System.out.println(tableRows.size());
for(int i=0; i<tableRows.size(); i++) {
System.out.println(tableRows.get(i).getAttribute("style"));
if(!
tableRows.get(i).getAttribute("style").contains("display: none;")) {
System.out.println("Table data -- >"
+tableRows.get(i).findElements(By.xpath("//td")).get(1).getText());
}
}
}

//Validate Date Picker


public static void validateTable() throws InterruptedException {
driver.get("https://www.seleniumeasy.com/test/table-pagination-
demo.html");
String tabelRow = "tbody#myTable tr";
String tableHeaders = "//table[contains(@class, 'table')]/thead/tr/th";
int reqHeader = 0;
List<WebElement> tableHeadersEle =
driver.findElements(By.xpath(tableHeaders));
for(int i=0;i<tableHeadersEle.size();i++) {
if(tableHeadersEle.get(i).getText().contains("Table heading 4"))
{
System.out.println(tableHeadersEle.get(i).getText());
reqHeader = i;
break;
}
}
List<WebElement> tableRows =
driver.findElements(By.cssSelector(tabelRow));
for(int i=0; i<tableRows.size(); i++) {
if(i == 1) {
System.out.println("Table data -- >"
+tableRows.get(i).findElements(By.xpath("//td")).get(reqHeader).getText());
}
}
}

//Validate Date Picker


public static void validateDatePicker( ) throws
InterruptedException {
driver.get("https://www.seleniumeasy.com/test/bootstrap-
date-picker-demo.html");
String dateEle = "span.input-group-addon";
String dateToBe = "//table[@class='table-
condensed']/tbody/tr/td";
driver.findElement(By.cssSelector(dateEle)).click();
List<WebElement> dateToBeEle =
driver.findElements(By.xpath(dateToBe));
for(WebElement ele : dateToBeEle ) {
System.out.println("Date "+ele.getText());
if(ele.getText().contentEquals("3")) {
ele.click();
break;
}

Thread.sleep(10000);
}

public static void validateForm1() {


driver.get("https://www.seleniumeasy.com/test/basic-first-form-
demo.html");
String name = "Arunkumar";
WebElement usrMsgTxtEle = driver.findElement(By.xpath(usrMsgTxt));
usrMsgTxtEle.clear();
usrMsgTxtEle.sendKeys(name);
WebElement showMsgBtnEle = driver.findElement(By.xpath(showMsgBtn));
showMsgBtnEle.click();
WebElement msgEle = driver.findElement(By.xpath(usrMsg));
if (name.equalsIgnoreCase(msgEle.getText())) {
System.out.println("Name is available " + msgEle.getText());
System.out.println("Execution Successful");
}
else {
System.out.println("Unsuccessful!");
}
}

//Two Input Fields Form


public static void validateForm2() {

//Multi Checkbox
public static void validateMultiCheckBox() {
String multiChckBoxes = "//div[contains(text(), 'Multiple Checkbox
Demo')]/following-sibling::div/div//label";
driver.navigate().to("https://www.seleniumeasy.com/test/basic-checkbox-
demo.html");
List<WebElement> checkBoxesEle =
driver.findElements(By.xpath(multiChckBoxes));
for(WebElement option : checkBoxesEle) {
if(option.getText().contains("Option 2"))
option.click();
}
}

public static void validateSingleChcBox() { }

public static void validateRadioBtn() {


driver.get("https://www.seleniumeasy.com/test/basic-radiobutton-
demo.html");
JavascriptExecutor js = (JavascriptExecutor)driver;
String genderRadioBtn = "//div[contains(text(), 'Radio Button
Demo')]/following-sibling::div//label";
String getGetBtn = "//button[@id='buttoncheck']";
String msgTxt = "//p[@class='radiobutton']";
String gender = "Female";
String expectedTxt = String.format("Radio button '%s' is checked",
gender);
List<WebElement> genderRadioBtnEle =
driver.findElements(By.xpath(genderRadioBtn));
for(WebElement genderOpt : genderRadioBtnEle) {
if(gender.equalsIgnoreCase(genderOpt.getText())) {
genderOpt.click();

js.executeScript("window.setTimeout(arguments[arguments.length - 1],
5000);");
driver.findElement(By.xpath(getGetBtn)).click();
String actualTxt =
driver.findElement(By.xpath(msgTxt)).getText();
if (expectedTxt.equals(actualTxt) )
System.out.println("Selected "+ gender);
}
}
}

//Validate Single Select dropdown


public static void validateSelectEle( ) {
driver.get("https://www.seleniumeasy.com/test/basic-select-dropdown-
demo.html");
String daySel = "//select[@id='select-demo']";
Select selectDayEle = new Select(driver.findElement(By.xpath(daySel)));
System.out.println(selectDayEle.isMultiple());
selectDayEle.selectByVisibleText("Sunday");
}

//Validate Single Select dropdown


public static void validateSelectEleJQuery( ) {
driver.get("https://www.seleniumeasy.com/test/jquery-dropdown-
search-demo.html");
String countryList = "//select[@id='country']";
String countryListMulti =
"/html/body/div[2]/div/div[2]/div[2]/div/div[2]/select";
Select selectDayEle = new
Select(driver.findElement(By.xpath(countryList)));
System.out.println(selectDayEle.isMultiple());
selectDayEle.selectByVisibleText("Netherlands");
selectDayEle = new
Select(driver.findElement(By.xpath(countryListMulti)));
selectDayEle.selectByValue("AR");
selectDayEle.selectByValue("AZ");

//Validate Multi Select


public static void validateMulitSelectEle( ) {
driver.get("https://www.seleniumeasy.com/test/basic-select-dropdown-
demo.html");
String citySel = "//select[@id='multi-select']";
Select selectDayEle = new
Select(driver.findElement(By.xpath(citySel)));
List<String> citiesToBeSelected = new ArrayList<String>();
citiesToBeSelected.add("New Jersey");
citiesToBeSelected.add("Washington");
for(String city: citiesToBeSelected) {
System.out.println(city);
selectDayEle.selectByVisibleText(city);
}
driver.findElement(By.id("printMe")).click();
System.out.println(driver.findElement(By.xpath("//p[@class='getall-
selected']")).getText());
}
}

Potrebbero piacerti anche