Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8282007

Assorted enhancements to jpackage testing framework



    • b11
    • generic
    • generic



        Add functionality to run_tests.sh script to make test development and debug more convenient:
         - option to create minimal Java Runtime sufficient to run default test app used in jpackage testing. Using of external runtime saves time in jpackage test runs as execution of jlink command from jpackage is skipped;
         - option to run full testing of jpackage, i.e., create test artifacts, unpack & verify them, install & verify them in a single invocation of run_tests.sh script;
         - add --no-check-certificate option to wget command downloading jtreg library.

        Remove unused test_jpackage.sh script. With the new functionality added to run_tests.sh it becomes obsolete.

        Extend functionality of test class used in jpackage testing (Hello.java):
         - add option to make it to not exit main();
         - add option to configure output file;

        Remove jdk.jpackage.test.PackageTest.addLauncherName(). It is error prone to make it call from tests explicitly.
        The list of additional launchers can be obtained by examining jpackage command line. Add corresponding functionality to jdk.jpackage.test.AdditionalLauncher.
        Use this functionality in PackageTest to build the list of configured additional launchers.
        Add support to running unpack and install actions in a single PackageTest.run() function invocation.
        Add to PackageTest verification of a number of top-level directories provided by installers. This will catch cases when installers will put files outside of expected directory trees.
        Add "purge" action, in addition, to unpack, install, and uninstall PackageTest actions. Purge action must delete installer bundle produced by test run. The idea of this action is automatically deleting installer bundles of passed tests to minimize disk space needed to run multiple tests.

        Improve robustness of install/uninstall platform handlers.
        Install handlers should gracefully handle scenarios when the package is already installed.
        Uninstall handlers should gracefully handle scenarios when the package is not installed.

        jdk.jpackage.test.WindowsHandler.DesktopIntegrationVerifier must be made private and must not have a reference to JPackageCommand instance as a member field.

        Make jdk.jpackage.test.AdditionalLauncher.verify() function overridable for future extensions.
        Expand $APPDIR, $ROOTDIR, and $BINDIR variables when verifying the output of the test app.


          Issue Links



                asemenyuk Alexey Semenyuk
                asemenyuk Alexey Semenyuk
                0 Vote for this issue
                5 Start watching this issue