Guest User

Untitled

a guest
Feb 19th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.83 KB | None | 0 0
  1. public class GetScreenshot {
  2.  
  3. public static String capture(WebDriver driver, String screenshotName) throws Exception
  4. {
  5. TakesScreenshot ts=(TakesScreenshot)driver;
  6. File source=ts.getScreenshotAs(OutputType.FILE);
  7.  
  8. String dest = "F:\Selenium Framework\com.orangeHRM.hybridFramework\Screenshots"+screenshotName+".png";
  9. File destination = new File(dest);
  10. FileUtils.copyFile(source, destination);
  11.  
  12. return dest;
  13.  
  14. }
  15.  
  16. package utility;
  17. import org.openqa.selenium.WebDriver;
  18. import org.testng.ITestResult;
  19. import org.testng.annotations.AfterMethod;
  20. import org.testng.annotations.AfterSuite;
  21. import org.testng.annotations.BeforeSuite;
  22.  
  23. import com.aventstack.extentreports.ExtentReports;
  24. import com.aventstack.extentreports.ExtentTest;
  25. import com.aventstack.extentreports.Status;
  26. import com.aventstack.extentreports.markuputils.ExtentColor;
  27. import com.aventstack.extentreports.markuputils.MarkupHelper;
  28. import com.aventstack.extentreports.reporter.ExtentHtmlReporter;
  29. import com.aventstack.extentreports.reporter.configuration.ChartLocation;
  30. import com.aventstack.extentreports.reporter.configuration.Theme;
  31.  
  32. public class BaseExtentTest {
  33.  
  34. WebDriver driver;
  35. public static ExtentReports extent;
  36. public static ExtentTest logger;
  37. public static ExtentHtmlReporter htmlReporter;
  38.  
  39. @BeforeSuite
  40. public void setUp()
  41. {
  42. htmlReporter = new ExtentHtmlReporter("./Reports/LoginPage.html");
  43. extent = new ExtentReports();
  44. extent.config();
  45. extent.attachReporter(htmlReporter);
  46.  
  47. htmlReporter.config().setReportName("Report");
  48. htmlReporter.config().setTestViewChartLocation(ChartLocation.TOP);
  49. htmlReporter.config().setTheme(Theme.STANDARD);
  50. }
  51.  
  52.  
  53. @AfterMethod
  54. public void getResult(ITestResult result) throws Exception{
  55.  
  56. if(result.getStatus()==ITestResult.FAILURE)
  57. {
  58. String screenshotPath=GetScreenshot.capture(driver, result.getName());
  59. //logger.log(Status.FAIL, MarkupHelper.createLabel(result.getName() + "test case failed due to below issues", ExtentColor.RED));
  60. logger.fail(MarkupHelper.createLabel(result.getName() + "test case failed due to below issues", ExtentColor.RED));
  61. logger.fail(result.getThrowable());
  62. logger.fail("Screenshot below" + logger.addScreenCaptureFromPath(screenshotPath));
  63. }
  64.  
  65. else if(result.getStatus()==ITestResult.SUCCESS)
  66. {
  67. logger.pass(MarkupHelper.createLabel(result.getName() + "test case Passed", ExtentColor.GREEN));
  68. }
  69. else
  70. {
  71. //logger.skip(Status.SKIP, MarkupHelper.createLabel(result.getName() + "test case Passed", ExtentColor.YELLOW));
  72. logger.skip(MarkupHelper.createLabel(result.getName() + "test case Skipped", ExtentColor.YELLOW));
  73. logger.skip(result.getThrowable());
  74. }
  75. extent.flush();
  76.  
  77. }
  78.  
  79.  
  80. @AfterSuite
  81. public void teardown()
  82. {
  83. extent.flush();
  84. }
  85.  
  86. package testCases;
  87.  
  88. import java.util.List;
  89. import java.util.concurrent.TimeUnit;
  90.  
  91. import org.openqa.selenium.Alert;
  92. import org.openqa.selenium.By;
  93. import org.openqa.selenium.WebDriver;
  94. import org.openqa.selenium.WebElement;
  95. import org.openqa.selenium.support.PageFactory;
  96. import org.testng.annotations.BeforeMethod;
  97. import org.testng.annotations.Test;
  98. import org.testng.asserts.SoftAssert;
  99.  
  100. import dataProvider.ExcelDataConfig;
  101. import factory.BrowserFactory;
  102. import factory.DataProviderFactory;
  103. import junit.framework.Assert;
  104. import pages.OrangeHRMHomePage;
  105. import pages.OrangeHRMLogin;
  106. import utility.BaseExtentTest;
  107. import utility.Highlight;
  108.  
  109. static WebDriver driver;
  110. static OrangeHRMHomePage homepage;
  111.  
  112. static ExcelDataConfig excel = new ExcelDataConfig("F:\Selenium Framework\com.hybridFramework\ApplicationTestData\TestData.xlsx");
  113.  
  114.  
  115. @BeforeMethod
  116. public static void AppOrangeHRMLogin(){
  117.  
  118.  
  119. logger = extent.createTest("AppOrangeHRMLogin");
  120. //this will automatically opens the browser, maximize the browser
  121. driver = BrowserFactory.getBrowser("Chrome");
  122.  
  123. //this will provide the URL from the config.properties file
  124. driver.get(DataProviderFactory.getConfig().getApplicationurl());
  125.  
  126. driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
  127.  
  128.  
  129. OrangeHRMLogin PageLogin=PageFactory.initElements(driver, OrangeHRMLogin.class);
  130. PageLogin.OrangeLogin(DataProviderFactory.getConfig().getusername(), DataProviderFactory.getConfig().getpassword());
  131.  
  132.  
  133. }
  134.  
  135. @Test
  136. public void deleteUser() throws Exception
  137. {
  138. logger = extent.createTest("deleteUser");
  139. //homepage=PageFactory.initElements(driver,OrangeHRMHomePage.class);
  140.  
  141. //homepage.AdminLink.click();
  142. Thread.sleep(5000);
  143.  
  144.  
  145. //List<WebElement> RowWebElement = homepage.ResultsTable;
  146. //int RC=RowWebElement.size();
  147.  
  148. //System.out.println("Row count for PF is " + RC);
  149.  
  150.  
  151. SoftAssert ass=new SoftAssert();
  152. ass.assertEquals("Welcome", "Wel");
  153. //Assert.assertEquals("Welcome", "Wec");
  154. ass.assertAll();
  155.  
  156.  
  157. homepage.Logout();
  158. BrowserFactory.closeBrowser(driver);
  159. //extent.flush();
  160.  
  161.  
  162. }
Add Comment
Please, Sign In to add comment