These release notes contain information about version 2.2 of the SigTest tools. See the SigTest 2.2 User's Guide for more information about the tools.
The SigTest product is a collection of tools that can be used to compare APIs and to measure the test coverage of an API. The tools were originally created to assist in the creation of Java technology compatibility test suites (TCKs), but are also useful in the creation of other types of test suites and in the software development process. The SigTest product consists of the following three tools.
The following new features have been added and the following bugs have been fixed.
This release of SigTest also includes the following improvements:
|SIGTEST-9 SIGTEST-44||Support for non-static constants|
|SIGTEST-45||API Cover - signature files with markup|
|SIGTEST-57||Support for separator-delimited parameters|
|SIGTEST-48||Plugin API extended|
|N/A||Improvements in reflection mode|
|SIGTEST-51||API Cover accepts non-closed signature files in real mode|
|N/A||Optional copyright notices in signature files|
The following bugs have been fixed.
|SIGTEST-28||Constant checking should be turned on by default in reflection mode|
|SIGTEST-50||Missing support for RuntimeInvisibleParameterAnnotations|
|SIGTEST-52||StringIndexOutOfBoundsException when parsing annotations|
|SIGTEST-53||SigTest doesn't catch conflicts with a field came from private interface|
|SIGTEST-54||Bogus sigtest failure E1.3 when making abstract class constructor protected|
|SIGTEST-58||Sigtest should process names with dollar sign|
|SIGTEST-59||Setup does not warn if superinterface for a class excluded|
|N/A||API Cover failed to run if utilized signature file is more narrow than API under review|
|N/A||In some cases sigtest fails in debug mode when running with -ea|
|N/A||BinaryClassDescrLoader doesn't close InputStream(s)|
|N/A||Merge procedure lose classes|
|N/A||Signature file writer is not thread safe|
|N/A||Constructor names in signature files|
|N/A||APICheckMode started to allow supersetting API|
Using the SigTest tools requires a properly configured certified Java Platform, Standard Edition (Java SE™ platform) runtime environment version 1.4 or later, or a Java SE platform 5.0 runtime environment if using reflection to test version 5.0 and later class files. A properly configured JDK™ installation is required to compile the examples.
The SigTest 2.2 User's Guide is available in the
doc/ directory in both
PDF and HTML format.
To install SigTest, unzip the distribution into a directory of your choice. For example, at a UNIX® system prompt type the following command:
% unzip sigtest-2.2.zip
Unpacking the Zip bundle installs subdirectories under the base installation directory. For more information, see the Release Contents section below and the documents listed under "For SigTest contributors" in the Quick Links box on the front page of the SigTest Project website.
This section lists the components under the base subdirectory structure (
that is created when you unzip the SigTest distribution archive during
|ReleaseNotes.html||The SigTest release notes (this document).|
|lib/sigtestdev.jar||The entire class archive that is necessary to run all the tool commands used to develop a signature test.|
|lib/sigtest.jar||A subset of the files in the sigtestdev.jar file, used for just running the signature test, usually from within a test suite with the JavaTest harness. You include this file in a finished test suite.||lib/apicover.jar||The library required to run the API Coverage tool commands.||lib/apicheck.jar||The library required to run the API Check tool commands.|
|mvn/||Contains Apache Maven plugins.|
|examples/||Contains the files used for the Signature Test tool and API Coverage tool examples. These examples are documented in the SigTest Version 2.2 Users Guide appendix.|
The Signature Test Tool operates from the command line with the following commands.
This section contains simple examples that show how to start the Signature Test tool from the command line using the Setup and SignatureTest command line options. See System Requirements for initial setup.
Example 1: The following command line runs the Setup command to create a signature file named result.sig:
java -jar sigtestdev.jar Setup -classpath $JAVA_HOME/jre/lib/rt.jar -filename result.sig -package java.text
Example 2: The following command line runs the SignatureTest command to manually run a signature test:
java -jar sigtest.jar Test -static -filename result.sig -classpath $JAVA_HOME/jre/lib/rt.jar -package java.text
This section describes the Signature Test tool operating modes and report messages.
Two run modes are available during command execution, each associated with how the class descriptions are examined and retrieved, as follows:
Report messages can be either sorted by default, or unsorted. They contain the following types of information:
See the SigTest Version 2.2 User's Guide for hands-on procedural examples of running the tool.
API Coverage Tool is a command-line utility that executes in a Java platform application environment. It generates static API test coverage reports in either plain text or XML format based on the following items specified by input arguments:
The SignatureTest and Merge commands might incorrectly process throw lists related to generics.
Copyright © 2008, 2010, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms.The majority of the SigTest project is released under the GNU General Public License Version 2 (GPLv2)