Module sysbot.utils.robot.listener.mysql
MySQL Listener for Robot Framework BDD Database Integration
This module provides a Robot Framework listener that stores test results in MySQL.
Usage
robot –listener sysbot.utils.robot.listener.mysql.Mysql:mysql://user:pass@localhost/testdb:MyCampaign your_tests/
Example
robot –listener sysbot.utils.robot.listener.mysql.Mysql:mysql://root:password@localhost/test_results:Sprint42 your_tests/
Requirements
- mysql-connector-python package must be installed
- MySQL server must be running and accessible
Classes
class Mysql (connection_string: str, campaign_name: str = 'Default Campaign')-
Robot Framework listener that stores test results in MySQL database.
MySQL is a popular relational database suitable for medium to large test suites and team environments where centralized test result storage is needed.
The listener creates a hierarchical structure: - Test Campaign (top level) - Test Suite - Test Case - Keyword
Requires: mysql-connector-python Install with: pip install mysql-connector-python
Initialize the MySQL listener.
Args
connection_string- MySQL connection string (e.g., mysql://user:pass@host/db)
campaign_name- Name of the test campaign (default: "Default Campaign")
Raises
ImportError- If SQLAlchemy or mysql-connector-python is not installed
Class variables
var ROBOT_LISTENER_API_VERSION
Methods
def close(self)-
Close database connection and update campaign end time.
Updates the campaign end timestamp, commits pending transactions, and closes the database connection.
def end_keyword(self, data, result)-
Called when a keyword ends.
Args
data- Robot Framework keyword data object.
result- Robot Framework keyword result object.
def end_suite(self, data, result)-
Called when a test suite ends.
Args
data- Robot Framework suite data object.
result- Robot Framework suite result object.
def end_test(self, data, result)-
Called when a test case ends.
Args
data- Robot Framework test data object.
result- Robot Framework test result object.
def start_keyword(self, data, result)-
Called when a keyword starts.
Args
data- Robot Framework keyword data object.
result- Robot Framework keyword result object.
def start_suite(self, data, result)-
Called when a test suite starts.
Args
data- Robot Framework suite data object.
result- Robot Framework suite result object.
def start_test(self, data, result)-
Called when a test case starts.
Args
data- Robot Framework test data object.
result- Robot Framework test result object.