The category-partition method for specifying and generating fuctional tests
Communications of the ACM
Simplifying and Isolating Failure-Inducing Input
IEEE Transactions on Software Engineering
Software Testing Techniques
Designing games with a purpose
Communications of the ACM - Designing games with a purpose
Minimizing database repros using language grammars
Proceedings of the 13th International Conference on Extending Database Technology
FlexMin: a flexible tool for automatic bug isolation in DBMS software
Proceedings of the Fourth International Workshop on Testing Database Systems
Hi-index | 0.00 |
Testing and debugging database system applications is often challenging and time consuming. A database tester (or DB tester for short) has to detect a problem, determine why it happened, set up an environment to reproduce it, and then create a fix to resolve the problem. In many cases, problems appear in complex scenarios, and thus the setup to reproduce a problem may be large and difficult to understand. This makes the task of finding the root cause of a problem very challenging. As a consequence, a very arduous task for a DB tester is finding a min-repro -- a process of weeding out irrelevant inputs and finding the simplest way to reproduce a problem. Currently, a great deal of searching for minrepros is carried out manually using non-database-specific tools, which is both slow and error-prone. In this paper, we present a system designed to ease and speed up searches for minrepros in database-related products. The min-repro system employs several effective tools, including: the novel simplification transformations, the high-level language for creating custom scripts and automation, the record-and-replay functionality, and the visualization of results and the search space. In addition to the standard application mode, the min-repro system can be interacted with in the game mode. The latter can provide an intrinsically motivating environment for developing successful search strategies, which can be data-mined and generalized into search patterns and used as recommendations for DB testers.