In this article, I will show you how to use Extent Report with Selenium Webdriver.Report is one of the most important feature of any Automation framework. TestNG already has in-build reporting but it does not look good and attractive. I have been using Extent report in my project since long and it is one of the best reporting.
I have already published 2 article of Extent Report 1 and Extent report 2 and recently extent report also has version 3 which is again very attractive.
Extent Report Version 3 Part 1
Extent Report Version 3 Part 2
Steps to Generate Extent Report with Selenium Webdriver
Precondition- You should have Java Project or Maven Project with Selenium.
Step 1- Start browser and Navigate to http://extentreports.com/ and Click on Community Edition
Step 2- Click on version 3
Step 3- Use Maven Dependency- Suggested way to use
If you are using normal Java project then you can download the jar manually and add in project.
<dependency> <groupId>com.aventstack</groupId> <artifactId>extentreports</artifactId> <version>3.1.5</version> </dependency>
Extent report also maintain very nice documentation which will explain every features.
Step 4 – Create Java Program which will generate report.
import java.io.IOException; import org.testng.annotations.Test; import com.aventstack.extentreports.ExtentReports; import com.aventstack.extentreports.ExtentTest; import com.aventstack.extentreports.MediaEntityBuilder; import com.aventstack.extentreports.Status; import com.aventstack.extentreports.reporter.ExtentHtmlReporter; public class ExtentReportDemo { @Test public void loginTest() throws IOException { // Create Object of ExtentHtmlReporter and provide the path where you want to generate the report // I used (.) in path where represent the current working directory ExtentHtmlReporter reporter=new ExtentHtmlReporter("./Reports/learn_automation1.html"); // Create object of ExtentReports class- This is main class which will create report ExtentReports extent = new ExtentReports(); // attach the reporter which we created in Step 1 extent.attachReporter(reporter); // call createTest method and pass the name of TestCase- Based on your requirement ExtentTest logger=extent.createTest("LoginTest"); // log method will add logs in report and provide the log steps which will come in report logger.log(Status.INFO, "Login to amazon"); logger.log(Status.PASS, "Title verified"); // Flush method will write the test in report- This is mandatory step extent.flush(); // You can call createTest method multiple times depends on your requirement // In our case we are calling twice which will add 2 testcases in our report ExtentTest logger2=extent.createTest("Logoff Test"); logger2.log(Status.FAIL, "Title verified"); logger2.fail("Failed because of some issues", MediaEntityBuilder.createScreenCaptureFromPath("/Users/mukeshotwani/Desktop/logo.jpg").build()); logger2.pass("Failed because of some issues", MediaEntityBuilder.createScreenCaptureFromPath("/Users/mukeshotwani/Desktop/logo.jpg").build()); // This will add another test in report extent.flush(); } }
Above code will generate the report in specific directory.
Scenario 2- Generate Extent Report which will attach Screenshot automatically when Test Failed.
import java.io.IOException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; 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.aventstack.extentreports.ExtentReports; import com.aventstack.extentreports.ExtentTest; import com.aventstack.extentreports.MediaEntityBuilder; import com.aventstack.extentreports.reporter.ExtentHtmlReporter; public class ExtentReportDemo2 { // Create global variable which will be used in all method ExtentReports extent; ExtentTest logger; WebDriver driver; // This code will run before executing any testcase @BeforeMethod public void setup() { ExtentHtmlReporter reporter=new ExtentHtmlReporter("./Reports/learn_automation2.html"); extent = new ExtentReports(); extent.attachReporter(reporter); logger=extent.createTest("LoginTest"); } // Actual Test which will start the application and verify the title @Test public void loginTest() throws IOException { System.setProperty("webdriver.chrome.driver", "/Users/mukeshotwani/Desktop/chromedriver"); driver=new ChromeDriver(); driver.get("http://www.google.com"); System.out.println("title is "+driver.getTitle()); Assert.assertTrue(driver.getTitle().contains("Mukesh")); } // This will run after testcase and it will capture screenshot and add in report @AfterMethod public void tearDown(ITestResult result) throws IOException { if(result.getStatus()==ITestResult.FAILURE) { String temp=Utility.getScreenshot(driver); logger.fail(result.getThrowable().getMessage(), MediaEntityBuilder.createScreenCaptureFromPath(temp).build()); } extent.flush(); driver.quit(); } }
In above code I have used one library which will capture the screenshot and return the path which we have used to pass in report.
public class Utility { public static String getScreenshot(WebDriver driver) { TakesScreenshot ts=(TakesScreenshot) driver; File src=ts.getScreenshotAs(OutputType.FILE); String path=System.getProperty("user.dir")+"/Screenshot/"+System.currentTimeMillis()+".png"; File destination=new File(path); try { FileUtils.copyFile(src, destination); } catch (IOException e) { System.out.println("Capture Failed "+e.getMessage()); } return path; } }
In above code I have used one of the feature of TestNG which help us to capture the result after execution.
I have detailed article on this which will explain how to capture screenshot on failure.
Hope you have enjoyed this article and try to implement the same in your project. If you have any doubt or want to discuss anything on this topic then just leave a comment and I will get back to you on this ASAP.
Thanks and Have A Nice Day 🙂
Atul Kishor Dubile says
How to attach fail test case video in extent report.
Video is generated but how to add that video in extend report?
Please explain
Mukesh Otwani says
Hi Atul,
You can use extentTestObj.addScreenCast() method available in Extent Report to attach video in Extent Report. This can be found at http://www.extentreports.com/docs/versions/2/java/.
poobathy says
Extent report is displayed as plain text with no style sheet any idea why it is displayed like this
Mukesh Otwani says
Hi Poobathy,
Are you running your test execution through Jenkins? If so then check this link
poobathy says
Am not executing through Jenkins just through eclipse only
in eclipse web browser the report has broken UI, because it was worked perfectly before 10 days
just wondering because of my java update
Mukesh Otwani says
Hi Poobathy,
It doesn’t seem to be Java issue. Have you tried opening same report in different browsers?
Ankit kulhade says
Hi article is great and really helpful. But what if i want to add runTime data in the extent report. for example user craeted one Bill and now i want to show that bill number to my report weather test has passed of failed. ?
can we add excel file with the Extent report ?
can you suggest on this .
Mukesh Otwani says
Hi Ankit,
On step where Bill No. gets generated and becomes visible on screen. Capture that value using element.getText() function then use ExtentTest object to put log into report as below
logger.log(Status.INFO, “Bill No. generated “+element.getText());
sam says
Hi , I am having maven project for automation .how i can run the test cases in parallel mode.
Thank you
Mukesh Otwani says
Hi Sam,
Please refer this link https://learn-automation.com/parallel-execution-in-selenium/
selenium_tester says
Hi Mukesh,
Your videos are very informative.
I am following your videos.
1. I have been able to capture the screenshot for the failed test, but the image loaded on the extent report is just like a small icon.
If I click on the icon, then the image becomes bigger.
Can you suggest why?
2. could you please make a video, in which integrate the Extent report into the framework but without using testng.
for eg: creating extent report as a static method in some other .java file and calling it as a function, whenever the test fails
-The .java file then could be a part of utilities package in the framework and not a part of base class
– the extent Utility.java class file should include methods like: setUp Extentfile, OntestSuccess ,OnTestFailure , ontestSkip method , alongwith the screenshot method
Mukesh Otwani says
Hi Tester,
Have you tried to open the report in different web browsers?
Your second point has mixed requirements. First without testng, it becomes difficult to manage and configure test execution. Selection of report object as static depends on requirement.
Mohammed Nasir Uddin says
Hi Mukesh
I am new in this field. I like your video very much because every thing you start from scratch and you are very detail oriented. Your video ‘Integrate Extent Report and Logs in Framework’ is also very good. in this video, it very difficult to connect step by step. It would be more better, if you had started every thing from scratch.
Thanks.
Mukesh Otwani says
Hi Nasir,
Please go through my youtube playlist https://www.youtube.com/c/Mukeshotwani
Also, you can visit the following links
http://learn-automation.com/selenium-webdriver-tutorial-for-beginners/
http://learn-automation.com/advance-selenium-webdriver-tutorials/
http://learn-automation.com/jenkins-with-selenium/
KESHAV says
Hi Mukesh here is my baseclass class which I am using for creating extent reports.
package com.Hybrid_framework.BaseSetup;
import com.Hybrid_framework.Utilities.CustomUtility;
import com.Hybrid_framework.Utilities.Properties_reader;
import com.aventstack.extentreports.ExtentReports;
import com.aventstack.extentreports.ExtentTest;
import com.aventstack.extentreports.MediaEntityBuilder;
import com.aventstack.extentreports.Status;
import com.aventstack.extentreports.reporter.ExtentHtmlReporter;
import com.aventstack.extentreports.reporter.configuration.Theme;
import org.openqa.selenium.WebDriver;
import org.testng.ITestResult;
import org.testng.annotations.*;
import java.io.IOException;
public class Baseclass {
public ExtentHtmlReporter htmlreporter;
public ExtentReports extent;
public ExtentTest testlogger;
public WebDriver driver;
@BeforeSuite
public void setReport(){
htmlreporter = new ExtentHtmlReporter(System.getProperty(“user.dir”)+”/ExecutionReports/extent-“+CustomUtility.getCurrentDateTime()+”.html”);
htmlreporter.config().setDocumentTitle(“Automation Report”); // Tile of report
htmlreporter.config().setReportName(“Functional Testing”); // Name of the report
htmlreporter.config().setTheme(Theme.STANDARD);
extent = new ExtentReports();
extent.attachReporter(htmlreporter);
extent.setSystemInfo(“User name”,System.getProperty(“user.name”));
extent.setSystemInfo(“Time Zone”, System.getProperty(“user.timezone”));
extent.setSystemInfo(“User Location”, System.getProperty(“user.country”));
extent.setSystemInfo(“OS name”, System.getProperty(“os.name”));
extent.setSystemInfo(“OS version”, System.getProperty(“os.version”));
extent.setSystemInfo(“JDK version”,System.getProperty(“java.version”));
extent.setSystemInfo(“Maven version”,Properties_reader.fetchPropertyValue(“Maven”));
extent.setSystemInfo(“Selenium version”,Properties_reader.fetchPropertyValue(“SeleniumVersion”));
}
@AfterSuite
public void endReport(){
extent.flush();
}
@BeforeTest
public void setupEnv(){
driver= BrowserSetup.LaunchBrowser(driver, Properties_reader.fetchPropertyValue(“Browser”),Properties_reader.fetchPropertyValue(“Url”));
}
@AfterTest
public void closeEnv(){
BrowserSetup.Teardown(driver);
}
@AfterMethod
public void evaluateStatus(ITestResult result) throws IOException {
if (result.getStatus() == ITestResult.FAILURE) {
testlogger.log(Status.FAIL, “TEST CASE FAILED IS ” + result.getName()); // to add name in extent report
testlogger.log(Status.FAIL, “TEST CASE ERROR IS ” + result.getThrowable());
String screenshotpath=CustomUtility.captureScreenshot(driver,result.getName());
testlogger.fail(“Test case has failed screenshot is below “, MediaEntityBuilder.createScreenCaptureFromPath(screenshotpath).build());
System.out.println(screenshotpath);
}
else if (result.getStatus() == ITestResult.SUCCESS) {
testlogger.log(Status.PASS, “Test Case PASSED IS ” + result.getName());
}
}
}
and here is the class which contains the screenshot method
public class CustomUtility {
public static String captureScreenshot(WebDriver driver, String screenshotName) {
TakesScreenshot ts=(TakesScreenshot)driver;
File src=ts.getScreenshotAs(OutputType.FILE);
String dest=System.getProperty(“user.dir”)+”\\Screenshots\\” +screenshotName+CustomUtility.getCurrentDateTime() +”.png”;
File finalDestinaton=new File(dest);
try {
FileHandler.copy(src, finalDestinaton);
}catch (Exception e){
System.out.println(e.getMessage());
}
return dest;
}
public static String getCurrentDateTime(){
DateFormat dateFormat = new SimpleDateFormat(“dd-mm-yyyy-h-m-s”);
Date date = new Date();
return dateFormat.format(date);
}
}
I can generate the report and do the logging easily but the only issue that despite of several efforts I am not able to find out the reason why Screenshot is not getting attached in report, Actually in place of screenshot I am getting broken image in the report.Please go through my code and let me know whats wrong as I have spent entire day in this.
Mukesh Otwani says
Hi Keshav, are you running this test via Jenkins? If yes, then you can go screenshot with bas64 and then attach the same.
Keshav Dwivedi says
I am not running it via Jenkins I am directly executing via Maven but still screenshot is not there even though report is being formed similar issue I have encountered in extent report 4 version
Mukesh Otwani says
Hi Keshav,
In your Extent report, do Inspect Element for the image which is not visible and check the actual image path
Smita says
Hi Keshav,
Is your issue resolved?
I ran your code on my device and found that the ‘Screenshots’ folder was not there, so I was also getting a broken image.
So I just created a folder named ‘Screenshots’ under my project home directory and it worked successfully and captured failed screenshot.
maqdoom says
Hi mukesh,
I am getting this exception
FAILED CONFIGURATION: @AfterTest tearDown
java.lang.IllegalArgumentException: wrong number of arguments
how to overcome this?
Mukesh Otwani says
Hi Maqdoom,
This is a basic java related issue. Kindly check number of parameters which you are passing in tearDown method
maqdoom says
Hi mukesh,
this is the method i am try to run. but it is showing the same exception. plz help me out.
@AfterTest
public void tearDown(ITestResult result) throws IOException
{
if (result.getStatus()==ITestResult.FAILURE)
{
String temp = extent_Report.Utility.getScreenshot(driver);
logger.fail(result.getThrowable().getMessage(), MediaEntityBuilder.createScreenCaptureFromPath(temp).build());
}
extent.flush();
driver.quit();
}
}
Mukesh Otwani says
Hi Maqdoom,
Use ITestResult in AfterMethod annotated method
ALAK DUTTA says
Hi, Mukesh
Your videos are very helpful. Can you please let me know how to get the all data of the passed/failed test cases in the extent report. For example I want to print all the options in the dropdown list and present it in the extent report.
Mukesh Otwani says
Hi Alak,
As you mentioned about drop down case, use getAllOptions from Select class. Bring those values or text into extent report using ExtentTest object.
Mubarak says
Hi
can you a post using the above in POM please.
thanks
Mukesh Otwani says
Hi Mubarak,
I’ll post it soon…
Raki says
HI Mukesh,
Can you show how to implement extent reports for parallel testing..? I don’t see any online help on extent reports with parallel testing and relying on you as usual.
Mukesh Otwani says
Hi Raki,
I’ll post it soon…:)
Atish Garg says
Hello Mukesh. I want to override the extent report status (left side) . As some time due to UI ,test failed and extent report mark it failed , but on retry , the test passed . Still extent report shows the test passed . is this possible
Mukesh Otwani says
Hi Atish,
Extent report is configurable in many possible ways. If you look at this http://extentreports.com/docs/javadoc/com/aventstack/extentreports/Status.html then you will multiple status for logs. ExtentTest logger cannot identify failure in test script, It depends on what status log we provide at point of failure. Whenever log status of Fail/Error/Fatal comes into report then only it will mark test as failure.
Himanshu Soni says
hi Mukesh,
I want to implement ExtentReport at suite level and it should generate a single report. Is this feature possible through community version?
Mukesh Otwani says
Hi Himanshu,
Yes, it is possible with community version of Extent Report.
rohit says
cant see extent report on intellij with above code
path curDir+”\\learn_automation1.html”);
Mukesh Otwani says
Hi Rohit,
Kindly check your report path as it shouldn’t depend on IDE.
Sruthi says
Hi Mukesh,
ExtentHtmlReporter is not displayed in the eclipse. I tried the “Project Root folder -> Properties -> Maven -> Update Project -> Tick all checkboxes at bottom -> OK” as suggested in one of your responses but no luck.
‘
I am using extent reports 4
Mukesh Otwani says
Hi Sruthi,
I would recommend you to go through their documentation http://extentreports.com/docs/versions/4/java/
Shailaja nare says
Hi Mukesh,
I have added dependency in pom .xml file but some how it’s not working
ExtentHtmlReporter class is not visible in eclipse.and eclipse is not giving default suggestions to add it..
Mukesh Otwani says
Hi Shailaja,
Do right click on Project Root folder -> Properties -> Maven -> Update Project -> Tick all checkboxes at bottom -> OK
After above, restart eclipse.
William Gomes Soares says
How did you create the ITestResult class?
Mukesh Otwani says
Hi William ITest in interface from TestNG library
Pratik says
HI Mukesh ,
I have implemented above code by creating extent report in separate class in main folder , and have kept the tests in test folder and using the extent feature by inheritance as : public class testone extends extendedreport.
The issue now is for screenshot I need to again define driver in extent report , hence it capture a blank screen , as new driver is started .
How to fix this , as ideally we dont want to write extent report code for each test separately
Mukesh Otwani says
Hi Pratik,
In this case, you need to use multi level inheritance so that you can access same driver object to your testone class.
Sudha says
Hi Mukesh,
Thanks for sharing such wonderful information on extent report. I have implemented extent report in my framework. Html report is getting generated and all the logs are present inside it. But the report is not displayed in proper format, its displayed as plain text. And pie chart is not displayed. I have tried opening the report in chrome, IE and Firefox but its same in all the browsers. Could you please help me here.
Regards,
Sudha
Mukesh Otwani says
Hi Sudha,
Which version of Extent report is in your project?
Sudha says
Hi Mukesh, I am using 2.41.2.
Mukesh Otwani says
Hi Sudha,
Selenium 2.41.x is quite old version released in March, 2014. I would recommend you to use latest 3.141.59
Bindu says
Hi Sudha/ Mukesh,
Is your issue with report format resolved.?
If so, could you let me know the steps followed.. even I am facing same issue.
Mukesh Otwani says
Hi Bindu,
HTML report coming in plan text format usually happens when CSS is not rendered properly on Web browser. It would be better if you use last release of version 3 of extent report which is 3.1.5
Dharani says
Is there any options to add video recording in extent report
Mukesh Otwani says
Hi Dharani,
I never tried this scenario but you can have look on these links
1. https://www.youtube.com/watch?v=jERN4Pf2aKc
2. https://www.youtube.com/watch?v=AoHs1atsLlg
Teja says
HI mukesh, Here i am getting error as configuration failure as
[RemoteTestNG] detected TestNG version 6.14.3
FAILED CONFIGURATION: @AfterMethod tearDown([TestResult name=loginTest status=FAILURE Method=BrandCreation.loginTest()[pri:0, instance:foodie.BrandCreation@42dafa95] output={null}])
java.lang.NullPointerException
at foodie.Utility.getScreenshot(Utility.java:18)
at foodie.BrandCreation.tearDown(BrandCreation.java:156)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
Mukesh Otwani says
Hi Teja,
Kindly debug your code at these below mentioned lines
at foodie.Utility.getScreenshot(Utility.java:18)
at foodie.BrandCreation.tearDown(BrandCreation.java:156)
bhushan pawar says
Hi Mukesh,
Can I use Extent report without Testng and selenium, in desktop based application, I am using Java
Mukesh Otwani says
Hi Bhushan,
Yes, Extent Report can be implemented without using TestNG and Selenium
Vijaya says
Hi Mukesh,
I am working with the Extent report generation. I have a GetResult methode in “A” Class and i am calling that methde from Class “B”.But getting NULLPointerException at the if(result.getStatus() == ITestResult.FAILURE) statement from getresult method. How to handle this
Mukesh Otwani says
Hi Vijaya,
ITestResult reference variable(i.e. result) brings @Test annotated method result. Now if you call this method from some other class then how will it refer your actual test method.
Are you inheriting class A to B?
Vijaya says
I have created the object of class “A” in class “B” and calling the methode by lp.getResult(result);
Mukesh Otwani says
Hi Vijaya,
You have to inherit class A to class B. The way you mentioned won’t work.
Vijaya says
Yes Mukesh. Issue solved. Thank you.
Mukesh Otwani says
Hi Vijaya,
Good…:)
Abdul says
Hi Mukesh,
can you please make a video for how to use data provider with extent report, and also parallel execution. thank you so much.
Mukesh Otwani says
Hi Abdul,
Here is the link for testng dataProvider http://learn-automation.com/data-driven-framework-in-selenium-webdriver/. In dataprovider looping mechanism, you can call ExtentTest object for logs into report.
I’ll post extent report with parallel execution soon.
Sumanth says
Hi Mukesh,
How to add the time stamp to extent report in BDD-Cucumber framework.
So that, for each execution new report should generate based on time stamp.
Thnaks
Sumanth
Mukesh Otwani says
Hi Sumanth,
You can use SimpleDateFormat library and generate current date and time in your required format and add as either prefix or suffix to report name.
Sumanth says
I have tried, but it didnt work.
The TestRunner.java class is below
@RunWith(Cucumber.class)
@CucumberOptions(
features = {“src/test/resources/CommonElements/CommonPgDisplay.feature”},// path of the feature file
glue = {“com.endnote.stepDefinition”}, // path of the step definition
format = {“pretty”, “json:target/cucumber-report.json”, “junit:target/cucumber-junit-report/cuc.xml”},//re sults format
monochrome = true, //display the console output in a proper readable format
strict = true, // it will fail the execution if there are any undefined steps(Step definition) are there
dryRun=false, // to check the mapping between feature file and Step definition file
tags = {“@test”},// for group run.., represent ORed operator and ANDed operator
plugin ={“com.cucumber.listener.ExtentCucumberFormatter:target/cucumber-reports/report.htm”,}// path of the extent report
)
Thanks’
Sumant
Mukesh Otwani says
Hi Sumanth,
Call your required method as mentioned below…
plugin ={“com.cucumber.listener.ExtentCucumberFormatter:target/cucumber-reports/”+<method for timestamp>+”report.html”,}
Sumanth says
in which class need to add SimpleDataFormat library
Mukesh Otwani says
Hi Sumanth,
You can this method in utility kind of class and invoke this method while creation of report name.
Hema says
Hi sir,
I have tried extent reports in (GEB, SPOCK, GROOVY) maven project . But I’m unable to create report in report package. Could u please help me
Mukesh Otwani says
Hi Hema,
Kindly check official documentation of Extent Reports as they didn’t mention any support for Geb, Spock & Groovy. If somebody has forked it modify then refer corresponding docs.
neeraj jain says
Hello Mukesh,
You Are doing good Job.
would you please confirm me that these videos are still relevant as i am afraid that some new version (extent report and other tools)has changed this .. please confirm. also could you please upload some latest video on selenium framework and mobile automation.
Mukesh Otwani says
Hi Neeraj,
Whatever videos/topics, I’ve posted are always relevant. Only thing is, being open source Selenium, Extent Report API, Jenkins..etc keep on updating frequently but that doesn’t means old versions doesn’t work. New versions comes with enhanced features..thats it. Old versions are available and you can use it anytime. Only thing which you need to understand is, what is your requirement…:)
For appium stuffs, I’ll upload videos soon..:)
Dipak Ingale says
Hi Mukesh,
I am trying to send the Extent Report which is generated using Extent Report 3.0 version on other machine via email. I am able to open the mail on other machine but the attached screenshot src is showing as local machine address. Can you please let me know how to tackle this issue so that I can see the images on other machine as well.
I am trying to store the screenshot using system.getProperty(“user.dir”) method.
Mukesh Otwani says
Hi Dipak,
Extent report supports relative path of file but if you want to see those images from other inside/outside your existing network then all screenshots have to be saved on machine which can act as web server. Because those screenshots are local to that machine which is not available on network(this is a case of viewing a file from other machine)
kohith says
can we customize the error message in the extent report when the test script got failed. Currently the console output is getting attached to the error step def line in report. — #cucumberTest #ExtentReport
Mukesh Otwani says
Hi Kohith,
Please refer this link https://github.com/email2vimalraj/CucumberExtentReporter
ashish says
how can we use a single logger for multiple test cases?
Mukesh Otwani says
Hi Ashish,
Inside baseclass, create object of logger and extend it all your test cases.
mahendra says
Hi mukesh,
i m mahendra i need one information about Selenium.how to download Jenkins &install and how to run programe in Jenkins.
thanks in advance,
mahendra
Mukesh Otwani says
Hi Mahendra,
Please check this link http://learn-automation.com/jenkins-with-selenium/
Bhavya says
Hi Mukesh,
How to run the selenium scripts in multiple Chrome browsers in the same machine using Testng.
Note: Same browser, same machine
Thanks in Advance,
Bhavya
Mukesh Otwani says
Hi Bhavya,
Please check this link http://learn-automation.com/cross-browser-testing-using-selenium-webdriver/
Pramod says
Hello Mukesh,
I am getting an error.
java.lang.UnsupportedClassVersionError: com/aventstack/extentreports
Plz help
Mukesh Otwani says
Hi Pramod,
Which version of extent report you have used?
Mayank Shabani says
Hi Mukesh,
Can you help me with one question?
If I want to send the extentreport to my team via Email, how would I be able to do so?
Mukesh Otwani says
Hi Mayank,
I would recommend you to send email link instead of whole email. You can achieve this by Commons Email API https://www.youtube.com/watch?v=qGq9K85mGyA
And if you are using Jenkins then refer this link https://www.youtube.com/watch?v=4PTYVIaBT1Q
kumar says
Hi Mukesh,
We are using Cucumber reports which are more good and attractive. So this Selenium Webdriver.Report is similar to cucumber reports right?
Mukesh Otwani says
Hi Kumar,
May I know which Selenium WebDriver report are you looking for?
Faizan Farooq Mamji says
Hi Mukesh,
Its really helpful 🙂
Mukesh Otwani says
Hi Faizan,
Thanks for your comments…:)
Ram says
Hi Mukesh,
Can you please make some blog for Cucumber & Protractor integration.
Ex- Angular application where BDD needs to be implemented
Mukesh Otwani says
Hi Ram,
As of now, I haven’t planned for this hut in coming days, will do it…:)
Ishita Shah says
Is their provision in Extent Report, to get back on Parent Node while using ChildNode.
Example: http://prntscr.com/jxx4gf
Mukesh Otwani says
Hi Ishita,
I think you may need to edit existing code. Look at below mentioned code
ExtentTest parentTest = extent.createTest(“MyFirstTest”);
ExtentTest childTest = parentTest.createNode(“MyFirstChildTest”);
childTest.pass(“details”);
RANJAN V says
How to Run Cucumber as Maven Test?
Mukesh Otwani says
Hi Ranjan,
Please check this link https://www.youtube.com/watch?v=4cF1Q7CISSE&list=
RANJAN V says
Hi Mukesh,
Thanks a lot Mukesh.Finally issue got resolved and now I am able to Run Cucumber as Maven Test.
Mukesh Otwani says
Great…:)
Sonali says
Hi Mukesh,
This is regarding write excel code in selenium using apache poi.
I am able to write data excel file where in excel file already have value.
but in blank excel file i am getting output value as null. Please suggest how to write data in blank excel sheet
Mukesh Otwani says
Hi Sonali,
May be you are missing something in your code. Please check this link http://learn-automation.com/read-and-write-excel-files-in-selenium/
Arjit Kathuria says
Thank you my screenshot problem is solved now.
Mukesh Otwani says
Great…:)
RANJAN V says
Hi Mukesh,
How to set Environment Variable path for Maven in Mac?
Mukesh Otwani says
Hi Ranjan,
Please refer this link
RANJAN V says
Thanks Mukesh.
Mukesh Otwani says
Hi Ranjan,
You are Welcome…:)