Skip to content

Instantly share code, notes, and snippets.

View adiralashiva8's full-sized avatar

Shiva Prasad Adirala adiralashiva8

  • Hyderabad
  • 19:01 (UTC +05:30)
View GitHub Profile
@adiralashiva8
adiralashiva8 / robotframework_suite_statistics.py
Last active September 11, 2019 09:52
Robotframework: Get suite statistics by parsing output.xml using robot.result package (api)
from robot.api import ExecutionResult, ResultVisitor
total_suite = 0
passed_suite = 0
failed_suite = 0
class SuiteResults(ResultVisitor):
def start_suite(self,suite):
@adiralashiva8
adiralashiva8 / robotframework_test_case_statistics.py
Created January 28, 2019 15:53
Robotframework: Get test case statistics by parsing output.xml using robot.result package (api)
from robot.api import ExecutionResult, ResultVisitor
result = ExecutionResult("output.xml")
stats = result.statistics
total_tests= stats.total.all.total
passed_tests= stats.total.all.passed
failed_tests= stats.total.all.failed
print total_tests
@adiralashiva8
adiralashiva8 / robotframework_keyword_statistics.py
Created January 28, 2019 16:01
Robotframework: Get keyword statistics by parsing output.xml using robot.result package (api)
from robot.api import ExecutionResult, ResultVisitor
total_keywords = 0
passed_keywords = 0
failed_keywords = 0
class KeywordResults(ResultVisitor):
def start_keyword(self,kw):
@adiralashiva8
adiralashiva8 / robotframework_suite_metrics.py
Created January 28, 2019 16:08
Robotframework: Get suite metrics like suite name, suite status, total tests in suite, suite duration by parsing output.xml using robot.result package (api)
from robot.api import ExecutionResult, ResultVisitor
class SuiteResults(ResultVisitor):
def start_suite(self, suite):
suite_test_list = suite.tests
if not suite_test_list:
pass
@adiralashiva8
adiralashiva8 / robotframework_test_case_metrics.py
Created January 28, 2019 16:10
Robotframework: Get test case metrics like test name, test status, duration by parsing output.xml using robot.result package (api)
from robot.api import ExecutionResult,ResultVisitor
class TestMetrics(ResultVisitor):
def visit_test(self,test):
print "Test Name: " + str(test.name)
print "Test Status: " + str(test.status)
print "Test Starttime: " + str(test.starttime)
print "Test Endtime: " + " " + str(test.endtime)
print "Test Elapsedtime (Sec): " + " " + str(test.elapsedtime/float(1000))
@adiralashiva8
adiralashiva8 / robotframework_test_case_metrics.py
Created January 28, 2019 16:12
Robotframework: Get keyword metrics like keyword name, keyword status, total keywords, keywords duration by parsing output.xml using robot.result package (api)
from robot.api import ExecutionResult,ResultVisitor
class KeywordMetrics(ResultVisitor):
def visit_keyword(self,kw):
print "Keyword Name: " + str(kw.name)
print "Keyword Status: " + str(kw.status)
print "Keyword Starttime: " + str(kw.starttime)
print "Keyword Endtime: " + " " + str(kw.endtime)
print "Keyword Elapsedtime (Sec): " + " " + str(kw.elapsedtime/float(1000))
@adiralashiva8
adiralashiva8 / Metrics.java
Created February 9, 2019 03:53
Code to parse testng-result.xml and print results
import org.w3c.dom.*;
import org.xml.sax.SAXException;
import javax.xml.parsers.*;
import java.io.*;
public class Metrics{
public static void main(String[] args) {
@adiralashiva8
adiralashiva8 / TestngMetrics.java
Last active February 12, 2019 18:42
Parse TestNG-result.xml to get method and test metrics
import org.w3c.dom.* ;
import org.xml.sax.SAXException;
import javax.xml.parsers.* ;
import java.io.* ;
public class TestngMetrics {
public static void main(String[] args) {
String path = System.getProperty("user.dir") + "/testng-result.xml";
<!DOCTYPE doctype html>
<html lang="en">
<head>
<link href="https://img.icons8.com/flat_round/64/000000/bar-chart.png" rel="shortcut icon" type="image/x-icon"/>
<title> TestNG Metrics Report</title>
<meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1, shrink-to-fit=no" name="viewport"/>
<meta content="width=device-width, initial-scale=1" name="viewport"/>
<link href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css" rel="stylesheet"/>
import org.w3c.dom.* ;
import org.xml.sax.SAXException;
import javax.xml.parsers.* ;
import java.io.* ;
public class TestNGMetricsReport {
public static void main(String[] args) {
String path = System.getProperty("user.dir") + "/result6.xml";