def serialize_output(self, path, _non_needed): from robot.reporting.outputwriter import OutputWriter serializer = OutputWriter(path) self.suite.serialize(serializer) from robot.common import Statistics statistics = Statistics(self.suite, ()) statistics.serialize(serializer) serializer.close()
def _create_split_sub_log(self, suite, split_level): outfile = self._get_outfile(self._namegen.get_name(), 'log') if not outfile: return self._use_template(outfile, templates.LOG, '%s Test Log' % suite.name) Statistics(suite).serialize(LogStatSerializer(outfile, split_level)) suite.serialize(LogSerializer(outfile, split_level)) outfile.write('</body>\n</html>\n') outfile.close()
def __init__(self, suite, exec_errors, settings=None): self.suite = suite self.exec_errors = exec_errors if settings: params = (settings['SuiteStatLevel'], settings['TagStatInclude'], settings['TagStatExclude'], settings['TagStatCombine'], settings['TagDoc'], settings['TagStatLink']) else: params = () self.statistics = Statistics(suite, *params) self._generator = 'Robot'
def process_output(self, path): path = path.replace('/', os.sep) try: print "Processing output '%s'" % path suite, errors = readers.process_output(path) except: raise RuntimeError('Processing output failed: %s' % utils.get_error_message()) setter = BuiltIn().set_suite_variable setter('$SUITE', process_suite(suite)) setter('$STATISTICS', Statistics(suite)) setter('$ERRORS', process_errors(errors))