def run(*datasources, **options): """Executes given Robot data sources with given options. Data sources are paths to files and directories, similarly as when running pybot/jybot from command line. Options are given as keywords arguments and their names are same as long command line options without hyphens. Examples: run('/path/to/tests.html') run('/path/to/tests.html', '/path/to/tests2.html', log='mylog.html') Equivalent command line usage: pybot /path/to/tests.html pybot --log mylog.html /path/to/tests.html /path/to/tests2.html """ STOP_SIGNAL_MONITOR.start() settings = RobotSettings(options) LOGGER.register_console_logger(settings['MonitorWidth'], settings['MonitorColors']) init_global_variables(settings) suite = TestSuite(datasources, settings) output = Output(settings) suite.run(output) LOGGER.info("Tests execution ended. Statistics:\n%s" % suite.get_stat_message()) output.close(suite) if settings.is_rebot_needed(): output, settings = settings.get_rebot_datasource_and_settings() ResultWriter(settings).write_robot_results(output) LOGGER.close() return suite
def run_rebot(*datasources, **options): """Creates reports/logs from given Robot output files with given options. Given input files are paths to Robot output files similarly as when running rebot from command line. Options are given as keywords arguments and their names are same as long command line options without hyphens. Examples: run_rebot('/path/to/output.xml') run_rebot('/path/out1.xml', '/path/out2.xml', report='myrep.html', log='NONE') Equivalent command line usage: rebot /path/to/output.xml rebot --report myrep.html --log NONE /path/out1.xml /path/out2.xml """ settings = RebotSettings(options) LOGGER.register_console_logger(colors=settings['MonitorColors']) LOGGER.disable_message_cache() suite = ResultWriter(settings).write_rebot_results(*datasources) LOGGER.close() return suite
def run_rebot(*datasources, **options): """Creates reports/logs from given Robot output files with given options. Given input files are paths to Robot output files similarly as when running rebot from command line. Options are given as keywords arguments and their names are same as long command line options without hyphens. Examples: run_rebot('/path/to/output.xml') run_rebot('/path/out1.xml', '/path/out2.xml', report='myrep.html', log='NONE') Equivalent command line usage: rebot /path/to/output.xml rebot --report myrep.html --log NONE /path/out1.xml /path/out2.xml """ settings = RebotSettings(options) LOGGER.register_console_logger(colors=settings['MonitorColors']) LOGGER.disable_message_cache() testoutput = RebotTestOutput(datasources, settings) testoutput.serialize(settings, generator='Rebot') LOGGER.close() return testoutput.suite
def run(*datasources, **options): """Executes given Robot data sources with given options. Data sources are paths to files and directories, similarly as when running pybot/jybot from command line. Options are given as keywords arguments and their names are same as long command line options without hyphens. Examples: run('/path/to/tests.html') run('/path/to/tests.html', '/path/to/tests2.html', log='mylog.html') Equivalent command line usage: pybot /path/to/tests.html pybot --log mylog.html /path/to/tests.html /path/to/tests2.html """ STOP_SIGNAL_MONITOR.start() settings = RobotSettings(options) LOGGER.register_console_logger(settings['MonitorWidth'], settings['MonitorColors']) output = Output(settings) init_global_variables(settings) suite = TestSuite(datasources, settings) suite.run(output) LOGGER.info("Tests execution ended. Statistics:\n%s" % suite.get_stat_message()) testoutput = RobotTestOutput(suite, settings) output.close(suite) if settings.is_rebot_needed(): datasources, settings = settings.get_rebot_datasources_and_settings() if settings['SplitOutputs'] > 0: testoutput = SplitIndexTestOutput(suite, datasources[0], settings) else: testoutput = RebotTestOutput(datasources, settings) testoutput.serialize(settings) LOGGER.close() return suite