+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..7db90ca
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,77 @@
+
+ 4.0.0
+ com.framework
+ com.framework.selenum
+ 0.0.1-SNAPSHOT
+ Selenium Framework
+ Selenium Framework
+
+
+
+
+ org.seleniumhq.selenium
+ selenium-java
+ 3.4.0
+
+
+
+ org.testng
+ testng
+ 6.8
+ test
+
+
+
+
+ org.apache.poi
+ poi-ooxml
+ 3.10-FINAL
+
+
+
+
+ com.relevantcodes
+ extentreports
+ 2.41.2
+
+
+
+
+
+
+
+
+
+
+org.apache.maven.plugins
+maven-compiler-plugin
+3.0
+
+1.8
+1.6
+1.6
+
+
+
+
+org.apache.maven.plugins
+maven-surefire-plugin
+2.17
+
+
+
+Regression.xml
+tarun.xml
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/smoke.xml b/smoke.xml
new file mode 100644
index 0000000..23bca49
--- /dev/null
+++ b/smoke.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/test/java/DataProvider/ConfigDataProvider.java b/src/test/java/DataProvider/ConfigDataProvider.java
new file mode 100644
index 0000000..e99ac4a
--- /dev/null
+++ b/src/test/java/DataProvider/ConfigDataProvider.java
@@ -0,0 +1,52 @@
+/**
+ *
+ */
+package DataProvider;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.util.Properties;
+
+/**
+ * @author alok
+ *
+ */
+public class ConfigDataProvider
+{ Properties pro;
+ public ConfigDataProvider()
+ {
+ File src = new File("./Configuration/Config.properties");
+
+ try {
+ FileInputStream fis = new FileInputStream(src);
+
+ pro= new Properties();
+ pro.load(fis); //loading properties file
+ }
+ catch (Exception e)
+ {
+
+ System.out.println(e.getMessage());
+ }
+
+ }
+
+ public String geturl()
+ {
+ String url=pro.getProperty("url");
+ return url;
+
+ }
+
+ public String getChromePath()
+ {
+ String url=pro.getProperty("ChromePath");
+ return url;
+ }
+ public String getMozillaPath()
+ {
+ String url=pro.getProperty("MozillaPath");
+ return url;
+ }
+}
diff --git a/src/test/java/DataProvider/ExcelDataProvider.java b/src/test/java/DataProvider/ExcelDataProvider.java
new file mode 100644
index 0000000..e78e51a
--- /dev/null
+++ b/src/test/java/DataProvider/ExcelDataProvider.java
@@ -0,0 +1,54 @@
+/**
+ *
+ */
+package DataProvider;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
+/**
+ * @author alok
+ * To retrieve data from Excel created in Application Testdata
+ */
+public class ExcelDataProvider
+ {
+
+ XSSFWorkbook wb;
+
+ /* Create Constructor to load the Excel File*/
+
+
+ public ExcelDataProvider()
+ {
+
+ File src = new File ("./Application Testdata/Excel Sheet.xlsx");
+
+ try
+ {
+ FileInputStream fis = new FileInputStream(src); //Loading of Excel File
+
+ wb = new XSSFWorkbook(fis); //Reading from Excel sheet
+
+ }
+ catch (Exception e)
+ {
+ System.out.println("The Exception is "+ e.getMessage());
+ }
+ }
+
+
+ public String getdata(int sheetIndex,int row,int column)
+ {
+ //String data = wb.getSheetAt(sheetIndex).getRow(row).getCell(column).getStringCellValue();
+
+ String data=wb.getSheetAt(sheetIndex).getRow(row).getCell(column).getStringCellValue();
+
+ return data;
+
+ }
+
+
+}
diff --git a/src/test/java/Factory/BrowserFactory.java b/src/test/java/Factory/BrowserFactory.java
new file mode 100644
index 0000000..b39740e
--- /dev/null
+++ b/src/test/java/Factory/BrowserFactory.java
@@ -0,0 +1,47 @@
+/**
+ *
+ */
+package Factory;
+
+import java.util.concurrent.TimeUnit;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.chrome.ChromeDriver;
+import org.openqa.selenium.firefox.FirefoxDriver;
+
+import DataProvider.ExcelDataProvider;
+
+/**
+ * @author alok
+ *
+ */
+public class BrowserFactory
+{
+ static WebDriver driver;
+
+ public static WebDriver getBrowser(String browser) //need to return webdriver
+ {
+ if (browser.equalsIgnoreCase("Firefox"))
+ {
+ System.setProperty("webdriver.gecko.driver",DataProviderFactory.getconfig().getMozillaPath());
+ driver = new FirefoxDriver();
+ }
+
+ else if (browser.equalsIgnoreCase("Chrome"))
+ {
+ System.setProperty("webdriver.chrome.driver",DataProviderFactory.getconfig().getChromePath());
+ driver = new ChromeDriver();
+ }
+
+ driver.manage().window().maximize();
+ driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
+ return driver;
+
+ }
+
+ public static void Closedriver(WebDriver ldriver)
+ {
+ ldriver.quit();
+ }
+
+}
diff --git a/src/test/java/Factory/DataProviderFactory.java b/src/test/java/Factory/DataProviderFactory.java
new file mode 100644
index 0000000..74afcf9
--- /dev/null
+++ b/src/test/java/Factory/DataProviderFactory.java
@@ -0,0 +1,32 @@
+/**
+ *
+ */
+package Factory;
+
+import DataProvider.ConfigDataProvider;
+import DataProvider.ExcelDataProvider;
+
+/**
+ * @author alok
+ *This Function will return object
+ */
+public class DataProviderFactory
+
+{
+ public static ConfigDataProvider getconfig() //creating function with return type as configDataProvider
+ {
+ ConfigDataProvider config = new ConfigDataProvider();
+ return config;
+ }
+
+
+
+
+ public static ExcelDataProvider getEXcel() //creating function with return type as ExcelDataProvider
+ {
+ ExcelDataProvider excel = new ExcelDataProvider();
+ return excel;
+ }
+
+
+}
diff --git a/src/test/java/Pages/HomePage.java b/src/test/java/Pages/HomePage.java
new file mode 100644
index 0000000..254bcad
--- /dev/null
+++ b/src/test/java/Pages/HomePage.java
@@ -0,0 +1,77 @@
+/**
+ *
+ */
+package Pages;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.WebElement;
+import org.openqa.selenium.support.FindBy;
+import org.openqa.selenium.support.PageFactory;
+
+
+
+/**
+ * @author alok
+ *
+ */
+
+
+public class HomePage
+{
+ WebDriver driver;
+
+ public HomePage(WebDriver ldriver)
+ {
+ driver= ldriver;
+
+
+ }
+
+
+ @FindBy(xpath="//a[text()='Sign In']") WebElement signInLink; //Finding xpaths
+
+ @FindBy(xpath="//a[text()='My Account']") WebElement myAccountLink;
+
+
+ @FindBy(xpath="//a[text()='My Cart']") WebElement myCartLink;
+
+
+ @FindBy(xpath="//a[text()='Checkout']") WebElement checkOutLink;
+
+ /* Now Writing methods to perform operations*/
+
+ public void clickOnSignLink()
+ {
+ signInLink.click();
+ }
+
+ public void ClickOnMyAccountLink()
+ {
+ myAccountLink.click();
+ }
+
+ public void ClickOnMyCartLink()
+ {
+ myCartLink.click();
+ }
+ public void ClickOnCheckOutLink()
+ {
+ checkOutLink.click();
+ }
+
+ public String GetAppTitle()
+ {
+
+ System.out.println("Before title fetch");
+
+
+ return driver.getTitle();
+
+
+
+
+ }
+
+
+
+}
diff --git a/src/test/java/Pages/LoginPage.java b/src/test/java/Pages/LoginPage.java
new file mode 100644
index 0000000..5b59f76
--- /dev/null
+++ b/src/test/java/Pages/LoginPage.java
@@ -0,0 +1,65 @@
+/**
+ *
+ */
+package Pages;
+
+import org.openqa.selenium.By;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.WebElement;
+import org.openqa.selenium.support.FindBy;
+import org.openqa.selenium.support.PageFactory;
+import org.openqa.selenium.support.ui.ExpectedCondition;
+import org.openqa.selenium.support.ui.ExpectedConditions;
+import org.openqa.selenium.support.ui.WebDriverWait;
+import org.testng.Assert;
+
+
+
+/**
+ * @author alok
+ *Class for Log In Page
+ */
+
+
+public class LoginPage
+{
+ WebDriver driver;
+
+ public LoginPage(WebDriver ldriver)
+ {
+ driver= ldriver;
+
+
+ }
+
+
+ @FindBy(name="email") WebElement userName; //Finding xpaths
+
+ @FindBy(name="passwd") WebElement password;
+
+ @FindBy(xpath="//input[@value='Sign In']") WebElement signUp;
+
+ By SignOut = By.xpath("//div[@class='pre-header']//a[text()='Sign Out']");
+
+ /* Now Writing methods to perform operations*/
+
+ public void logIn(String user, String pass)
+ {
+ userName.sendKeys(user);
+ password.sendKeys(pass);
+ signUp.click();
+ }
+
+ public void verifySuccessLogIn()
+ {
+ //Providing Explicitly wait to check presence of Sign out link//
+
+ WebDriverWait wait = new WebDriverWait(driver, 20);
+ WebElement wb=wait.until(ExpectedConditions.presenceOfElementLocated(SignOut));
+ String text=wb.getText();
+ Assert.assertEquals(text, "Sign Out","Login UnSuccessfull");
+ }
+
+
+
+}
diff --git a/src/test/java/Testcases/VerifyHomePage.java b/src/test/java/Testcases/VerifyHomePage.java
new file mode 100644
index 0000000..e1edd79
--- /dev/null
+++ b/src/test/java/Testcases/VerifyHomePage.java
@@ -0,0 +1,62 @@
+/**
+ *
+ */
+package Testcases;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.PageFactory;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import Factory.BrowserFactory;
+import Factory.DataProviderFactory;
+import Pages.HomePage;
+
+/**
+ * @author alok
+ *
+ */
+public class VerifyHomePage
+{
+
+ WebDriver driver;
+
+
+ @BeforeMethod
+ public void Setup()
+ {
+ driver=BrowserFactory.getBrowser("firefox");
+ driver.get(DataProviderFactory.getconfig().geturl());
+ }
+
+ @Test
+
+ public void verifyTestcase()
+ {
+ // to interact with Home Page , We create object of Home page and to initialize the home page we need Page Factory
+ //HomePage home = PageFactory.initElements(driver, HomePage.class);
+
+ HomePage home = PageFactory.initElements(driver, HomePage.class);
+
+ String title = home.GetAppTitle();
+
+ Assert.assertTrue(title.contains("Demo Store"));
+
+ System.out.println("Assertion Passed");
+
+ }
+
+ @AfterMethod
+
+ public void CloseBrowser()
+ {
+ BrowserFactory.Closedriver(driver);
+ }
+
+
+ }
+
+
+
diff --git a/src/test/java/Testcases/VerifyLogInPage.java b/src/test/java/Testcases/VerifyLogInPage.java
new file mode 100644
index 0000000..070bc0a
--- /dev/null
+++ b/src/test/java/Testcases/VerifyLogInPage.java
@@ -0,0 +1,75 @@
+/**
+ *
+ */
+package Testcases;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.PageFactory;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import Factory.BrowserFactory;
+import Factory.DataProviderFactory;
+import Pages.HomePage;
+import Pages.LoginPage;
+
+/**
+ * @author alok
+ *
+ */
+public class VerifyLogInPage
+{
+
+ WebDriver driver;
+
+ @BeforeMethod
+ public void Setup()
+ {
+ driver=BrowserFactory.getBrowser("firefox");
+ driver.get(DataProviderFactory.getconfig().geturl());
+ }
+
+ @Test
+ public void verifyTestcase()
+ {
+ // to interact with Home Page , We create object of Home page and to initiize the home page we need Page Factory
+
+ HomePage home = PageFactory.initElements(driver, HomePage.class);
+
+ String title = home.GetAppTitle();
+
+ Assert.assertTrue(title.contains("Demo Store"));
+
+ home.clickOnSignLink();
+
+ LoginPage login = PageFactory.initElements(driver, LoginPage.class);
+
+ //login.logIn("aloksrivastav@google.com", "aloksrivastav@google.com"); //retriving data hardcoded
+
+
+ // retrieving data from excel
+ System.out.println("Fetching data from Excel");
+
+
+ login.logIn(DataProviderFactory.getEXcel().getdata(0, 0, 0), DataProviderFactory.getEXcel().getdata(0, 0, 1));
+
+
+ login.verifySuccessLogIn();
+
+
+ }
+
+ @AfterMethod
+
+ public void CloseBrowser()
+ {
+ BrowserFactory.Closedriver(driver);
+ }
+
+
+ }
+
+
+
diff --git a/src/test/java/Testcases/VerifyLogInPagewithReport.java b/src/test/java/Testcases/VerifyLogInPagewithReport.java
new file mode 100644
index 0000000..71e3ce2
--- /dev/null
+++ b/src/test/java/Testcases/VerifyLogInPagewithReport.java
@@ -0,0 +1,98 @@
+/**
+ *
+ */
+package Testcases;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.PageFactory;
+import org.testng.Assert;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import com.relevantcodes.extentreports.ExtentReports;
+import com.relevantcodes.extentreports.ExtentTest;
+import com.relevantcodes.extentreports.LogStatus;
+
+import Factory.BrowserFactory;
+import Factory.DataProviderFactory;
+import Pages.HomePage;
+import Pages.LoginPage;
+
+/**
+ * @author alok
+ *
+ */
+public class VerifyLogInPagewithReport
+{
+
+ WebDriver driver;
+
+ ExtentReports report;
+ ExtentTest logger;
+
+ @BeforeMethod
+ public void Setup()
+ {
+ report = new ExtentReports("./Reports/LoginPageReport.html",true);//creating object of Extent Report
+
+ logger = new ExtentTest("Verify Login Page","This page will verify successful login"); //Creating object of logger
+
+ logger= report.startTest("Verify Login Page"); //Starting test to generate report
+
+
+ driver=BrowserFactory.getBrowser("firefox");
+ driver.get(DataProviderFactory.getconfig().geturl());
+
+ logger.log(LogStatus.INFO,"Browser is launched");
+ }
+
+ @Test
+ public void verifyTestcase()
+ {
+ // to interact with Home Page , We create object of Home page and to initiize the home page we need Page Factory
+
+ HomePage home = PageFactory.initElements(driver, HomePage.class);
+
+ String title = home.GetAppTitle();
+
+ Assert.assertTrue(title.contains("Demo Store"));
+
+ logger.log(LogStatus.PASS," Application is up and running");
+
+ home.clickOnSignLink();
+
+ LoginPage login = PageFactory.initElements(driver, LoginPage.class);
+
+ //login.logIn("aloksrivastav@google.com", "aloksrivastav@google.com"); //retriving data hardcoded
+
+
+ // retrieving data from excel
+ System.out.println("Fetching data from Excel");
+
+
+ login.logIn(DataProviderFactory.getEXcel().getdata(0, 0, 0), DataProviderFactory.getEXcel().getdata(0, 0, 1));
+
+
+ login.verifySuccessLogIn();
+
+ logger.log(LogStatus.PASS,"verification of Successful Login");
+
+
+ }
+
+ @AfterMethod
+
+ public void CloseBrowser()
+ {
+ BrowserFactory.Closedriver(driver);
+ report.endTest(logger);
+ report.flush();
+
+ }
+
+
+ }
+
+
+
diff --git a/src/test/java/Testcases/VerifyLogInPagewithReportandScreenshot.java b/src/test/java/Testcases/VerifyLogInPagewithReportandScreenshot.java
new file mode 100644
index 0000000..007b5bb
--- /dev/null
+++ b/src/test/java/Testcases/VerifyLogInPagewithReportandScreenshot.java
@@ -0,0 +1,110 @@
+/**
+ *
+ */
+package Testcases;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.PageFactory;
+import org.testng.Assert;
+import org.testng.ITestResult;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import com.relevantcodes.extentreports.ExtentReports;
+import com.relevantcodes.extentreports.ExtentTest;
+import com.relevantcodes.extentreports.LogStatus;
+
+import Factory.BrowserFactory;
+import Factory.DataProviderFactory;
+import Pages.HomePage;
+import Pages.LoginPage;
+import Utility.Helper;
+
+/**
+ * @author alok
+ *
+ */
+public class VerifyLogInPagewithReportandScreenshot
+{
+
+ WebDriver driver;
+
+ ExtentReports report;
+ ExtentTest logger;
+
+ @BeforeMethod
+ public void Setup()
+ {
+ report = new ExtentReports("./Reports/LoginPageReport.html",true);//creating object of Extent Report
+
+ logger = new ExtentTest("Verify Login Page","This page will verify successful login"); //Creating object of logger
+
+ logger= report.startTest("Verify Login Page"); //Starting test to generate report
+
+
+ driver=BrowserFactory.getBrowser("chrome");
+ driver.get(DataProviderFactory.getconfig().geturl());
+
+ logger.log(LogStatus.INFO,"Browser is launched");
+ }
+
+ @Test
+ public void verifyTestcase()
+ {
+ // to interact with Home Page , We create object of Home page and to initiize the home page we need Page Factory
+
+ HomePage home = PageFactory.initElements(driver, HomePage.class);
+
+ String title = home.GetAppTitle();
+
+ Assert.assertTrue(title.contains("Demo Store"));
+
+ logger.log(LogStatus.PASS," Application is up and running");
+
+ home.clickOnSignLink();
+
+ LoginPage login = PageFactory.initElements(driver, LoginPage.class);
+
+ //login.logIn("aloksrivastav@google.com", "aloksrivastav@google.com"); //retriving data hardcoded
+
+
+ // retrieving data from excel
+ System.out.println("Fetching data from Excel");
+
+
+ login.logIn(DataProviderFactory.getEXcel().getdata(0, 0, 0), DataProviderFactory.getEXcel().getdata(0, 0, 1));
+
+
+ login.verifySuccessLogIn();
+
+ //Take screeshot for success scenario
+
+ logger.log(LogStatus.INFO, logger.addScreenCapture(Helper.CaptureScreenshot(driver,"verification successful")));
+
+ logger.log(LogStatus.PASS,"verification of Successful Login");
+
+
+ }
+
+ @AfterMethod
+
+ public void CloseBrowser(ITestResult result)
+ {
+ if(result.getStatus()==ITestResult.FAILURE)
+ {
+ String path=Helper.CaptureScreenshot(driver, result.getName());
+ logger.log(LogStatus.FAIL,logger.addScreenCapture(path));
+ }
+
+ BrowserFactory.Closedriver(driver);
+ report.endTest(logger);
+ report.flush();
+
+ }
+
+
+ }
+
+
+
diff --git a/src/test/java/Utility/Helper.java b/src/test/java/Utility/Helper.java
new file mode 100644
index 0000000..70ea4c2
--- /dev/null
+++ b/src/test/java/Utility/Helper.java
@@ -0,0 +1,40 @@
+/**
+ *
+ */
+package Utility;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.commons.io.FileUtils;
+import org.openqa.selenium.OutputType;
+import org.openqa.selenium.TakesScreenshot;
+import org.openqa.selenium.WebDriver;
+
+/**
+ * @author alok-- for Screenshot Capture
+ *
+ */
+public class Helper
+
+ {
+
+ public static String CaptureScreenshot(WebDriver driver, String Screenshotname)
+ {
+ TakesScreenshot ts = (TakesScreenshot)driver; //Type casting driver to take sccreenshot
+ File src =ts.getScreenshotAs(OutputType.FILE); //returning file as screenshot
+
+ String destination = "C:\\Users\\alok\\Desktop\\Workspace\\com.framework.selenum\\Screenshot"+Screenshotname+System.currentTimeMillis()+".png";
+
+ try {
+ FileUtils.copyFile(src, new File(destination)); //copy file accepts 'file' type as src and destination
+
+ } catch (Exception e)
+
+ {
+ System.out.println("Failed to attach screenshot"+ e.getMessage());
+ }
+ return destination;
+ }
+
+ }
diff --git a/tarun.xml b/tarun.xml
new file mode 100644
index 0000000..644c779
--- /dev/null
+++ b/tarun.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/test-output/Default suite/Default test.html b/test-output/Default suite/Default test.html
new file mode 100644
index 0000000..9aec80e
--- /dev/null
+++ b/test-output/Default suite/Default test.html
@@ -0,0 +1,185 @@
+
+
+TestNG: Default test
+
+
+
+
+
+
+
+
+
Default test
+
+
Tests passed/Failed/Skipped:
0/0/1
+
+
Started on:
Sun Jul 30 23:11:36 IST 2017
+
+
Total time:
0 seconds (960 ms)
+
+
Included groups:
+
+
Excluded groups:
+
+
+(Hover the method name to see the test class name)
+
+
FAILED CONFIGURATIONS
+
Test method
+
Exception
+
Time (seconds)
+
Instance
+
+
+
Setup Test class: Testcases.VerifyLogInPagewithReportandScreenshot
+
java.lang.IllegalStateException: The driver executable does not exist: F:\GitFramework\.\chromedriver_win32\chromedriver.exe
+ at com.google.common.base.Preconditions.checkState(Preconditions.java:518)
+ at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:136)
+ at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:131)
+ at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:32)
+ at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:137)
+ at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:330)
+ at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)
+ at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:124)
+ at Factory.BrowserFactory.getBrowser(BrowserFactory.java:33)
+ at Testcases.VerifyLogInPagewithReportandScreenshot.Setup(VerifyLogInPagewithReportandScreenshot.java:46)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:498)
+ at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
+ at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:564)
+ at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:213)
+ at org.testng.internal.Invoker.invokeMethod(Invoker.java:653)
+ at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
+ at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
+ at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
+ at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
+ at org.testng.TestRunner.privateRun(TestRunner.java:767)
+ at org.testng.TestRunner.run(TestRunner.java:617)
+ at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
+ at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
+ at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
+ at org.testng.SuiteRunner.run(SuiteRunner.java:240)
+ at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
+ at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
+ at org.testng.TestNG.runSuitesSequentially(TestNG.java:1198)
+ at org.testng.TestNG.runSuitesLocally(TestNG.java:1123)
+ at org.testng.TestNG.run(TestNG.java:1031)
+ at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
+ at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:230)
+ at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:76)
+
java.lang.IllegalStateException: The driver executable does not exist: F:\GitFramework\.\chromedriver_win32\chromedriver.exe
+ at com.google.common.base.Preconditions.checkState(Preconditions.java:518)
+ at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:136)
+ at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:131)
+ at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:32)
+ at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:137)
+ at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:330)
+ at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)
+ at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:124)
+ at Factory.BrowserFactory.getBrowser(BrowserFactory.java:33)
+ at Testcases.VerifyLogInPagewithReportandScreenshot.Setup(VerifyLogInPagewithReportandScreenshot.java:46)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:498)
+ at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
+ at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:564)
+ at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:213)
+ at org.testng.internal.Invoker.invokeMethod(Invoker.java:653)
+ at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
+ at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
+ at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
+ at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
+ at org.testng.TestRunner.privateRun(TestRunner.java:767)
+ at org.testng.TestRunner.run(TestRunner.java:617)
+ at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
+ at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
+ at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
+ at org.testng.SuiteRunner.run(SuiteRunner.java:240)
+ at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
+ at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
+ at org.testng.TestNG.runSuitesSequentially(TestNG.java:1198)
+ at org.testng.TestNG.runSuitesLocally(TestNG.java:1123)
+ at org.testng.TestNG.run(TestNG.java:1031)
+ at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
+ at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:230)
+ at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:76)
+
+
+
\ No newline at end of file
diff --git a/test-output/Default suite/Default test.xml b/test-output/Default suite/Default test.xml
new file mode 100644
index 0000000..8b28841
--- /dev/null
+++ b/test-output/Default suite/Default test.xml
@@ -0,0 +1,52 @@
+
+
+
+
+
+ (ChromeDriver.java:124)
+ at Factory.BrowserFactory.getBrowser(BrowserFactory.java:33)
+ at Testcases.VerifyLogInPagewithReportandScreenshot.Setup(VerifyLogInPagewithReportandScreenshot.java:46)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:498)
+ at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
+ at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:564)
+ at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:213)
+ at org.testng.internal.Invoker.invokeMethod(Invoker.java:653)
+ at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
+ at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
+ at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
+ at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
+ at org.testng.TestRunner.privateRun(TestRunner.java:767)
+ at org.testng.TestRunner.run(TestRunner.java:617)
+ at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
+ at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
+ at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
+ at org.testng.SuiteRunner.run(SuiteRunner.java:240)
+ at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
+ at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
+ at org.testng.TestNG.runSuitesSequentially(TestNG.java:1198)
+ at org.testng.TestNG.runSuitesLocally(TestNG.java:1123)
+ at org.testng.TestNG.run(TestNG.java:1031)
+ at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
+ at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:230)
+ at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:76)
+]]>
+
+
+
+
+
+
+
+
+
diff --git a/test-output/Default suite/testng-failed.xml b/test-output/Default suite/testng-failed.xml
new file mode 100644
index 0000000..44644f3
--- /dev/null
+++ b/test-output/Default suite/testng-failed.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test-output/Regression_Suite/Test.html b/test-output/Regression_Suite/Test.html
new file mode 100644
index 0000000..d6f5a01
--- /dev/null
+++ b/test-output/Regression_Suite/Test.html
@@ -0,0 +1,99 @@
+
+
+TestNG: Test
+
+
+
+
+
+
+
+
+
Test
+
+
Tests passed/Failed/Skipped:
4/0/0
+
+
Started on:
Sat Jul 29 22:47:35 IST 2017
+
+
Total time:
88 seconds (88593 ms)
+
+
Included groups:
+
+
Excluded groups:
+
+
+(Hover the method name to see the test class name)
+
+
PASSED TESTS
+
Test method
+
Exception
+
Time (seconds)
+
Instance
+
+
+
verifyTestcase Test class: Testcases.VerifyHomePage
+
+
0
+
Testcases.VerifyHomePage@11161c7
+
+
verifyTestcase Test class: Testcases.VerifyLogInPagewithReport
+
+
9
+
Testcases.VerifyLogInPagewithReport@4f787b
+
+
verifyTestcase Test class: Testcases.VerifyLogInPage
+
+
8
+
Testcases.VerifyLogInPage@c4039c
+
+
verifyTestcase Test class: Testcases.VerifyLogInPagewithReportandScreenshot
The driver executable does not exist: F:\GitFramework\.\chromedriver_win32\chromedriver.exe
+com.google.common.base.Preconditions.checkState(Preconditions.java:518)
+ at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:136)
+ at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:131)
+ at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:32)
+ at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:137)
+ at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:330)
+ at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)
+ at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:124)
+ at Factory.BrowserFactory.getBrowser(BrowserFactory.java:33)
+ at Testcases.VerifyLogInPagewithReportandScreenshot.Setup(VerifyLogInPagewithReportandScreenshot.java:46)
+ 27 lines not shown
+