TestCases

From RDB2RDF
Revision as of 10:50, 28 February 2012 by Bvillazo2 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Purpose

The purpose of the RDB2RDF test cases is to verify and validate the specification of the DM and R2RML language. Moreover, these test cases can be useful to create a test harness or automated test framework for testing the interoperable implementors, i.e. R2RML engines.

Approach

Process Owner

As in previous WGs we need someone to collect, document, and package the test cases. The person in charge is Boris, and everyone is welcome to contribute/comment to the Test Cases.

Official document

There is a centralized document that includes the R2RML Test Cases, and it is available at R2RML Test Cases

The document is generated automatically from the W3C mercurial repository


Protocol

1. Boris will send to the mailing list the set of simple TC and corner TCs.

2. The working group will check the simple TCs and approve them (by email)

3. The working group will check the corner TCs and approve them (by email)


Organization

As we agreed the test cases are organized by database. Eric proposes to include in the database name the description of it. So, a database will include

1. Graphical representation of the tables involved.

2. The SQL script associated to the database (sql file)

3. Direct mappping associated to the database. It includes:

3.1 Title

3.2 Purpose

3.3 Specification Reference

3.4 Review Status

3.5 hasExpectedOutput

3.6 Expected output - associated file (nt)

4. One or more R2RML Test Cases associated to the database. It includes:

4.1 Title

4.2 Purpose

4.3 Specification Reference

4.4 Review Status

4.5 Expected Result (nq file)

4.6 hasExpectedOutput

4.6 R2RML Mapping (ttl file)


The associated files will be available at: https://dvcs.w3.org/hg/rdb2rdf-tests/

The following picture illustrates the organization

Tcsmall.png

Submit Test Results

We also start discussing about Submitting Test Results

Current Status

The official document is available here RDB2RDF Test Cases

Suggestions for new TCs

* We should have an R2RML test case for an empty R2RML mapping file. It produces an empty output dataset.

* This is illegal because of unnamed column: SELECT DEPTNO, COUNT(EMPNO) FROM EMP GROUP BY DEPTNO;

* This is legal because the column is named: SELECT DEPTNO, COUNT(EMPNO) AS EMPCOUNT FROM EMP GROUP BY DEPTNO;

* This is illegal because of duplicate column name DEPTNO in result: SELECT EMP.DEPTNO, 1 AS DEPTNO FROM EMP;

* This is legal; qualified column names are ok: SELECT EMP.DEPTNO FROM EMP

* Include the TCs suggested by Eric - I18NnoSpecialChars

  • Proposal : A testcase with multiple predicateObjectMap predicates refereing to the same logical table. Purpose : to test how does the implemented system deal with alias

Answer: Most of the TCs have multiple predicateObjectMap predicates referencing to the same logical table. I'm not sure if I get your proposal, but I've created TC0008c

Coverage

Here we check the coverage of the Test Cases.

R2RML TC

DM TC