| TCK Coverage Document for JSR-243 Java Data Objects 2.0: |
| |
| TCK Overview: |
| --------------- |
| The JDO TCK tests use the JUnit testing framework. The TCK is distributed |
| as a source tree archive containing test source and all required configuration |
| files, including the JDO metadatafiles and SQL scripts. Test build and |
| execution is driven by the maven.xml build script. The user can run the |
| full test suite, groups of tests, or individual tests. Test results and |
| configuration information are saved in a timestamped log directory. |
| |
| TCK Components: |
| --------------- |
| - Installation instructions at db.apache.org/jdo/downloads |
| - README.txt |
| - Run Rules |
| - maven.xml test driver |
| - Test Suite |
| - exclude list |
| |
| TCK Dependencies to be manually installed (documented in README.txt) : |
| --------------- |
| - Maven 1.0.x |
| - JNDI implementation |
| |
| TCK Dependencies downloaded automatically by Maven: |
| --------------- |
| - JDO2 components api20, core20, enhaner20, tck20 |
| - JUnit test framework |
| - JPOX JDO implementation |
| - Derby |
| - Other third-party libraries |
| |
| Terminology of Metrics |
| ---------------------- |
| - Assertion: A specific statement of functionality or behavior derived |
| from a specification. |
| A testable assertion is one that can be validated in an implementation |
| by testing. |
| - Test: A binary application (or script) comprised of one or more Test Cases. |
| - Test Case: A single set of test inputs, execution conditions, and expected |
| results developed to verify an implementation's conformance with a specific |
| assertion. |
| - Specification Assertion Coverage: Ratio of all assertions tested by at |
| least one test |
| case to the total number of testable assertions defined by the specification. |
| - API Coverage: Ratio of methods directly exercised by test cases to the |
| total number of methods defined by the specification. |
| |
| Coverage |
| -------- |
| - Total testable assertions: 1663 specification assertions, including all api |
| signatures as well as text assertions identified through hand markup |
| of the FrameMaker specification document using conditional text. |
| Chapter 18 of the specification provides an XML grammar for metadata, for |
| which separate assertions were not developed. The metadata is extensively |
| tested by a small number of tests using a number of different metadata sets. |
| - Tests: 538 |
| - Test cases: 1158 |
| - Assertion coverage: 1342/1561 = 86% |
| - API Signature Coverage: 100% for all defined public members |
| |
| Quality Assurance |
| ----------------- |
| - TCK was run using representative configurations of the Reference |
| Implementation on |
| the following platforms: |
| * Windows 2000 Pro/Sun J2SE 1.4.2 |
| * MacOX 10.4/Sun J2SE 1.4.2 |
| * Red Hat Linux/Sun J2SE 1.4.2 |
| - TCK code quality was demonstrated through use of code reviews conducted |
| publicly on the jdo-dev@apache.org email list |
| - Documentation instructions were verified and tested |
| |
| Justification of Adequacy |
| ------------------------- |
| Given the large number of assertions and metadata elements, the coverage |
| is good. |
| The availability of test development resources was limited. |
| |