This is a category page for the Random Query Generator project.
The Random Query Generator is a fully-configurable framework which allows the creation of random data sets and the running of randomly generated queries against them, for the purposes of QA testing.
Information on how to get started, installation and prerequisites.
List of contributors.
Information on running the tool and creating your first test.
Reference to the SQL grammar format used by the RQG and the available convenience features.
Tag grammar rules with properties that should hold for each query generated from the grammar rule.
Information on Validators, the modules which examine the outcome of queries after they are executed.
Information on Reporters, the modules that monitor the server while the test is running or after the test has finished and take actions based on the situation.
Information on the data generating component.
Information on how to create good grammars and generate syntactically valid queries.
The Combinations facility, which allows the same test to be run with various settings in order to obtain greater coverage.
All about Grammar Masking and Grammar Redefinition
Integration with MySQL's other testing tools, such as MTR and PB2.
Using the built-in features of the RQG for grammar and test debugging.
Using the RQG to test MySQL replication
Using the RQG to test MySQL partitioning
The facilities for simplifying grammars and the automatic creation of mysqltest functional test cases.
The facility for transforming queries into equivalent forms that are then executed and checked against the original.
Describes the mechanism that is used to filter out queries that should not be executed because of known bugs or other considerations.
Information on how to run the RQG with Valgrind.
A list of the available tests an grammars that are distributed along with the tool.
Information for using the RQG to test third-party MySQL storage engines.
The list of known issues with the RQG and the space to add a desired feature in the wish list.
How to run comparison tests between two servers, products or configurations
How to run 3-way database comparision with MySQL, JavaDB/Derby and PostgreSQL.
How to write portable grammars which can generate queries which are runnable on other databases than MySQL.
A short basic descritption on how to use JavaDB/Derby from RQG.