SQLFpc Web Service - Generation of Full Predicate Coverage Rules for testing SQL database queries (MCDC for SQL)

SQLFpc exposes a Web service to generate the SQLFpc Coverage Rules from third party applications (alternatively, they can be generated interactively from a browser). In order to get started on how to integrate an application using the service, read the following information:

  1. SQLFpc Overview
  2. Specification of the Web service
  3. Sample code of a Web service Client
  4. Submit a Software Problem Report/Request for Enhancement
  5. Release notes
  6. Getting started with SQLFpc (Web interface)

1. SQLFpc Overview

Follow this link to get the main documentation page

2. Specification of the Web service

Links to the Service:

2.1. Operations

The web service provides two operations:

2.2. Inputs

The getRules method requires three strings as input:

  1. sql : A string containing the SQL of the query to be mutated. Take into account some issues on how to specify the SQL (provided by the SQLMutation documentation).
  2. schema : A string containing an XML representation of the database Schema. See the instructions on how to specify the database schema (provided by the SQLMutation documentation).
  3. options: Additional parameters (see Additional options).

2.3. Outputs

The service returns a string containing the fules formatted in an XML document that can be further loaded and processed by any application.

The format of the result is explained below:

The root tag named <sqlfpcws> which contains:

  1. A header tag named <version> which contains a single text with the version number.
  2. A tag named <sql> which contains the SQL statement being mutated.
  3. A tag with the result of the rule generation. This can be one of the following:
    1. The <error> tag is returned if an error occurred during the process. The text inside displays an explanatory message.
    2. The <fpcrules> tag is returned when the rule generation is successful. It contains all rules generated and, for each one:
      • A <fpcrule> tag representing a single rule. Inside this tag:
        • A set of identification tags that classify the mutant (<id>: a sequence number, <category>, <type> and <subtype>:)
        • The <sql> tag that contains the SQL representation of the coverage rule
      • The <description> tag that contains a textual explanation of the test requirement represented by the rule

2.4. Additional options

The third parameter of the web service methods is a xml character string which may include a set of options enclosed in the tag <options></options>. Enclosed in this tag you may include one or more of the following tags:

3. Sample code of a Web service Client

The help pages for the SQLMutation Web Service include two examples written in Java and .NET. Both examples will also work with SQLFpc. The only change to be made is the url for the web service (see above in this document)

4. Submit a Software Problem Report/Request for Enhancement

Open the Web Interface and then click the button "Submit Problem Report/Request for Enhancement" at the bottom of the form