Skip to content

xNok/robotframework-metrics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robot Framework Metrics Report

Creates awesome HTML (dashboard view) report by parsing robotframework output.xml file

PyPI version Downloads PRs Welcome Maintenance Open Source Love png1 Gitter


  • Sample Report link
  • What's new in _v3.1.2 link
  • Source Code used to parse output.xml in metrics report link

How it Works:

  1. Read output.xml file using robotframework API
  2. Get Suite, Test Case , Keyword , Status and Elapsed time values
  3. Convert data to html report using Beautifulsoup

How to use in project:

  1. Install robotmetrics

    Case 1: Using pip

    pip install robotframework-metrics==3.1.2
    

    Case 2: Using setup.py (clone project and run command within root)

    python setup.py install
    

    Case 3: For latest changes use following command (pre-release or changes in master)

    pip install git+https://github.com/adiralashiva8/robotframework-metrics
    
  2. Execute robotmetrics command to generate report

    Case 1: No change in output.xml, log.html file name's and user is in same folder

    robotmetrics
    

    Case 2: Change in output.xml, log.html file name's And .xml and .html files are under 'Result' folder

    robotmetrics --inputpath ./Result/ --output output1.xml --log log1.html
    

    robotframework-metrics can parse multiple xmls at a time. Following is the command

    robotmetrics --inputpath ./Result/ --output "output1.xml,output2.xml" --log log1.html
    

    For more info on command line options use:

    robotmetrics --help
    
  3. RobotFramework Metrics Report metric-timestamp.html file will be created in current folder | -inputpath if specified

Note: From v3.1.4 users can specify custom_report_name instead of metrics-timestamp.html (changes in master)

robotmetrics -M regression_metrics.html

Customize Report

Specify Logo in Robotframework metrics:

  • Custom Logo : Customize your logo by using --logo command line option

    --logo "https://mycompany/logo.jpg"
    

How to Ignore Library Keywords in Metrics Report

  • Use command line options to ignore library keywords
    --ignore "Collections,Selenium2Library"
    
  • In Metric report, keywords with type value 'for' and 'foritem' are ignored
  • Following library keywords are ignored in Metrics Report
    ignore_library = [
     'BuiltIn',
     'SeleniumLibrary',
     'String',
     'Collections',
     'DateTime',
    ] 
    

Generate robotframework-metrics after execution

Execute robotmetrics command after suite or test execution as follows:

  • Create .bat (or) .sh file with following snippet

    robot test.robot &&
    robotmetrics [:options]
    

    && is used to execute multiple command's in .bat file

  • Modify robotmetrics command as required and execute .bat file

  • Robotframework metrics will be created after execution


*Performance Improvement (Beta) *

  • Do you feel robotmetrics command taking more time to capture metrics? Robotframework-metrics have ability to process metrics in parallel using gevent (which helps in saving time)
  • Step 1: Install gevent
  • Step 2: Execute robotmetrics command

Thanks for using robotframework-metrics!

  • What is your opinion of this report?
  • What’s the feature I should add?

If you have any questions / suggestions / comments on the report, please feel free to reach me at


Credits:

  1. Robotframework link
  2. Stackoverflow link
  3. Google charts link
  4. DataTable link
  5. BeautifulSoup link
  6. Jquery | JavaScript link
  7. Bootstrap link
  8. Icons8 link
  9. FontAwesome link

Note: Report uses above open source libraries for generating report and its not offline compatible


Special Thanks To:

Idea, Guidance and Support:

Contributors:

  1. Pekka Klarck [Author of robotframework]

    • Contributed source to get 'Test Case' name from keyword
    • Suggested to use robotframework api to parse output.xml content
  2. Ruud Prijs

    • Contributed source to use command line options for report
  3. Jesse Zacharias

    • Made robotmetrics installable (pip)
    • Contributed source to improve performance
  4. Bassam Khouri

    • Contributed source to use ArgParser
    • Contributed source to provide a human readable error if output.xml does not exist
  5. Francesco Spegni

    • Contributed source to parse multiple xml's
    • Fixed distorted image
  6. Sreelesh Kunnath

    • Contributed source to specify custom metrics file name (changes will be from v3.1.4)

Feedback:

  1. Mantri Sri
  2. Prasad Ozarkar
  3. Suresh Parimi
  4. Robotframework community users

STAR to appreciate us

About

Generation of metrics report based on robotframework output.xml

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%