From: wisberg Date: Sat, 26 Apr 2003 21:15:23 +0000 (+0000) Subject: moving release testing list to tests/, added some old stuff. X-Git-Tag: V1_1_0_RC2~150 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=0557b906e87ef2179694dc919ad67b9fbf0fa077;p=aspectj.git moving release testing list to tests/, added some old stuff. TODO: write test-release.xml ant script --- diff --git a/build/readme-build-and-test-aspectj.html b/build/readme-build-and-test-aspectj.html index 8c1b36bd2..e7829c658 100644 --- a/build/readme-build-and-test-aspectj.html +++ b/build/readme-build-and-test-aspectj.html @@ -305,111 +305,10 @@ For bug fixes, associated tests in tests/ajcTests.xml. -

Before a release, run the following tests using a Java 1.3 VM -(the minimum required by the AspectJ tools): -

    -
  1. JUnit tests. Run these before the final build - using tests/junitModules.xml - (which runs all the - modules/{module}/testsrc/{module}ModuleTests.java). -

    -

  2. - -
  3. All compiler tests in tests/ajcTests.xml - and tests/ajcTestsFailing.xml. - Run these before the final build using the test harness, - as follows: -
    -  cd tests/
    -  java -jar {..}/testing-drivers-all.jar ajcTests.xml -release 
    -
    - The -release option skips tests - marked purejava or knownLimitation - and only emits one-line results for each test: -
    -PASS one test identifier()
    -FAIL another test identifier()
    -...
    -
    - (Use -help on the harness to see the full - definition of the -release alias.) - Run with and without the -emacssym option, - saving the output - to the appropriate subdirectory of the - org.aspectj/releases directory - with the name - ajcTests-result-{version}.txt - or ajcTests-result-{version}-emacssym.txt. -

    - Compare results with a prior release or test run using TestDiffs: -

    -  set CLASSPATH="{..}/testing-drivers-all.jar"
    -  java org.aspectj.testing.util.TestDiffs {first-run}.txt {second-run}.txt
    -
    - This will generate lists of tests fixed, broken, missing, or - added. For a release, no tests from ajcTests.xml - should be broken, and missing tests (those in the first run absent from the - second run) should be justified (usually the test was - removed as invalid). A test will show up as - missing from the first run and added to the second run if - it is renamed between runs. - For a final release, no test should be FAIL unless it is - deferred (including those from ajcTestsFailing.xml). -

    - For more information, see the instructions for building and running - the test harness and the tests - - ../tests/readme-tests-module.html. -

    -

  4. -
  5. Examples. Run these on the built/installed release. -The following should build and run the spacewar example: -
    -    cd {aspectj-install}/doc/examples
    -    {ant 1.5.1} -f build.xml
    -
    -Also run 2-3 other targets from Ant and some examples directly: -
      -
    • -The target all -runs all examples, and nonGui runs those -that do not require manual operation; -
    • - -
    • The targettracing-bc does bytecode weaving; -
    • -
    • -Run some of the compiled examples in a 1.1 VM - (the minimum required for running AspectJ code). -
    • -
    -

    -This quick test verifies that the -aspectjtools.jar and aspectjrt.jar -are installed and have a matching version, that the examples actually -compile and run, etc. -

    -

  6. -
  7. If there are any bugs which are closed with this release - but which do not have an automated test case run using - JUnit or the harness, those bugs should be manually tested - against the release. -

    -

  8. -
  9. Any other tests warranted by release objectives. - E.g., make sure it works as expected for any demos or - for any clients (e.g., Emacs, AJDT). -
  10. -
-

Some failures with past releases to consider checking: -

- +

Before a release, run the release tests as described in + + ../tests/readme-release-tests.html. +

Release completion

When the release build is accepted, tag the tree with the release version diff --git a/tests/readme-release-tests.html b/tests/readme-release-tests.html new file mode 100644 index 000000000..7ba01adb7 --- /dev/null +++ b/tests/readme-release-tests.html @@ -0,0 +1,138 @@ + +AspectJ release testing + +

AspectJ release testing

+This describes tests to validate AspectJ before a release. + +Some may be omitted for pre-release distributions, but all +should be run for final releases. +For information on how to build and run tests, see + + ../build/readme-build-and-test-aspectj.html +and + + readme-tests-module.html. + +

(Most of these can and should be rolled into an Ant script +for automation; until that script is written, this describes +tests and could and/or should be run.) + +

Before a release, run the following tests using a Java 1.3 VM +(the minimum required by the AspectJ tools): +

    +
  1. JUnit tests. Run these before the final build + using tests/junitModules.xml + (which runs all the + modules/{module}/testsrc/{module}ModuleTests.java). +

    +

  2. + +
  3. All compiler tests in tests/ajcTests.xml + and tests/ajcTestsFailing.xml. + Run these before the final build using the test harness, + as follows: +
    +  cd tests/
    +  java -jar {..}/testing-drivers-all.jar ajcTests.xml -release 
    +
    + The -release option skips tests + marked purejava or knownLimitation + and only emits one-line results for each test: +
    +PASS one test identifier()
    +FAIL another test identifier()
    +...
    +
    + (Use -help on the harness to see the full + definition of the -release alias.) + Save the output + to the appropriate subdirectory of the + org.aspectj/releases directory + with the name + ajcTests-result-{version}.txt. + or ajcTests-result-{version}-emacssym.txt. +

    + Compare results with a prior release or test run using TestDiffs: +

    +  set CLASSPATH="{..}/testing-drivers-all.jar"
    +  java org.aspectj.testing.util.TestDiffs {first-run}.txt {second-run}.txt
    +
    + This will generate lists of tests fixed, broken, missing, or + added. For a release, no tests from ajcTests.xml + should be broken, and missing tests (those in the first run absent from the + second run) should be justified (usually the test was + removed as invalid). A test will show up as + missing from the first run and added to the second run if + it is renamed between runs. + For a final release, no test should be FAIL unless it is + deferred (including those from ajcTestsFailing.xml). +

    + For (at least final) releases, run all relevant variants: +

      +
    • With and without -emacssym
    • +
    • 1.3 and 1.4 VM's
    • +
    • without -release and with purejava tests. While + these may fail, they should not crash the compiler.
    • +
    + +
  4. Examples. Run these on the built/installed release. +The following should build and run the spacewar example: +
    +    cd {aspectj-install}/doc/examples
    +    {ant 1.5.1} -f build.xml
    +
    +Also run 2-3 other targets from Ant and some examples directly: +
      +
    • +The target all +runs all examples, and nonGui runs those +that do not require manual operation; +
    • + +
    • The targettracing-bc does bytecode weaving +
    • +
    • The targettracing-adapter-ajc compiles the + tracing example using the task and the + Ajc compiler adapter. +
    • +
    • +Run the compiled examples in a 1.1 VM + (the minimum required for running AspectJ code). +
    • +
    +

    +This quick test verifies that the +aspectjtools.jar and aspectjrt.jar +are installed and have a matching version, that the examples actually +compile and run, etc. +

    +

  5. +
  6. If there are any bugs which are closed with this release + but which do not have an automated test case run using + JUnit or the harness, those bugs should be manually tested + against the release. +

    +

  7. +
  8. Any other tests warranted by release objectives. + E.g., make sure it works as expected for any demos or + for any clients (e.g., Emacs, AJDT). +
  9. +
  10. Compile large open-source Java projects using AspectJ. +
  11. +
  12. Run the AspectJ compiler against the Jacks test suite. +
  13. +
  14. Manually step through the + ajde/script.html + on the AspectJ browser. +
+

Some failures with past releases to consider checking: +

+ + +