TCK Coverage Document for JSR-341: 
Expression Language 5.0 Specification

TCK Components:
---------------
- User's Guide
- Compatibility Rules
- Configuration Instructions
- Test Suite
- API Tests 
- Signature Tests
- End-to-End Tests
- Framework Code
- JavaTest TM Harness

Terminology of Metrics
----------------------
- Assertion: A specific statement of functionality or behavior derived from a specification.
  A  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  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  assertions from the 
  Expression Language 5.0 Specification, and Javadoc:

     212 specification assertions
   + 344 API assertions
  ----------------------
     556 assertions

- Total assertions tested
      169 specification assertions tested
    + 209 API assertions tested
     --------------------------------------
      372 assertions tested

  - 79.41% of  specification assertions tested
  - 60.76% of  API assertions tested
  - 70.08% of all (specification and API) assertions tested

- API Signature Coverage: 100% for all defined public and protected members and validated
  by the signature test included with the Unified Expression Language TCK.

Assertions were identified through the use of CTS Tools and hand markup (hand markup was
required for the Unified Expression Language specification).

- See the following HTML reports in this bundle for Unified Expression Language specification 
  and API coverage metrics:
    * coverage/el_3_0/api/summary.html
    * coverage/el_3_0/spec/summary.html


Quality Assurance
-----------------
- TCK was run using representative configurations of the Reference Implementation on
  the following platforms:
   * Ubuntu 12.10
   * Fedora 18
   * openSUSE 12.2
   * Solaris 11.1 Sparc
   * Solaris 11.1 X86
   * Solaris 10 Sparc
   * MacOS 10.8
   * Oracle Linux Server release 6.3
   * Windows XP Professional
   * Windows 2008
   
- Code quality was demonstrated through use of code reviews and inspections
- User's Guide was constructed from the standard CTS User's Guide template
- Documentation instructions were verified and tested


Justification of Adequacy
-------------------------
The Unified Expression Language CTS provides a set of tests to ensure all implementations of
the Unified Expression Language specification are compatible.  As with all TCKs it is 
impossible to provide tests for 100% assertion coverage.  Note, while
the CTS may not have tests for all assertions in Unified Expression Language, all
implementations of Unified Expression Language must be compatible with the specifications.

Untested assertions are due to the effects of availability and cost of 
test development resources.
