Annotation Type UITest


  • @Documented
    @Retention(RUNTIME)
    @Target({TYPE,METHOD,ANNOTATION_TYPE})
    @ExtendWith(org.xwiki.test.integration.junit5.ValidateConsoleExtension.class) @ExtendWith(org.xwiki.test.docker.internal.junit5.XWikiDockerExtension.class) @ExtendWith(org.xwiki.test.docker.internal.junit5.TestReferenceParameterResolver.class) @ExtendWith(org.xwiki.test.docker.internal.junit5.TestLocalReferenceParameterResolver.class)
    @TestInstance(PER_CLASS)
    @TestMethodOrder(org.junit.jupiter.api.MethodOrderer.OrderAnnotation.class)
    public @interface UITest
    Marks a test as being a functional UI Test.
    Since:
    10.6RC1
    Version:
    $Id: c5df279e0ada0ee6740c6ceffcdbe41c16473e11 $
    • Element Detail

      • browser

        Browser browser
        Returns:
        the browser to use, see Browser
        Default:
        org.xwiki.test.docker.junit5.browser.Browser.FIREFOX
      • database

        Database database
        Returns:
        the database to use, see Database
        Since:
        10.9
        Default:
        org.xwiki.test.docker.junit5.database.Database.HSQLDB_EMBEDDED
      • servletEngine

        ServletEngine servletEngine
        Returns:
        the Servlet Engine to use, see ServletEngine
        Since:
        10.9
        Default:
        org.xwiki.test.docker.junit5.servletengine.ServletEngine.JETTY_STANDALONE
      • verbose

        boolean verbose
        Returns:
        true if the test should output verbose console logs or not
        Since:
        10.10RC1
        Default:
        false
      • debug

        boolean debug
        Returns:
        true if the test should output debug console logs or not
        Since:
        10.11RC1
        Default:
        false
      • offline

        boolean offline
        Returns:
        true if the Maven resolving is done in offline mode (i.e. you need to have the required artifacts in your local repository). False by default to avoid developer problems but should be set to true in the CI to improve performance of functional tests
        Since:
        10.10RC1
        Default:
        false
      • servletEngineTag

        String servletEngineTag
        Returns:
        the docker image tag to use (if not specified, uses the "latest" tag)
        Since:
        10.10RC1
        Default:
        ""
      • databaseTag

        String databaseTag
        Returns:
        the docker image tag to use (if not specified, uses the default from TestContainers)
        Since:
        10.10RC1
        Default:
        ""
      • jdbcDriverVersion

        String jdbcDriverVersion
        Returns:
        the version of the JDBC driver to use for the selected database (if not specified, uses a default version depending on the database)
        Since:
        10.10RC1
        Default:
        ""
      • vnc

        boolean vnc
        Returns:
        true if VNC container is started and recording is done and saved on test exit
        Since:
        10.10RC1
        Default:
        true
      • wcag

        boolean wcag
        Returns:
        true if WCAG tests should be executed, false otherwise
        Default:
        false
      • properties

        String[] properties
        Returns:
        the list of configuration properties to use when generating the XWiki configuration files such as xwiki.properties with Velocity (check xwiki.properties.vm to find the list of supported properties)
        Since:
        10.10RC1
        Default:
        {}
      • extensionOverrides

        ExtensionOverride[] extensionOverrides
        Returns:
        the properties to overwrite in the generated extensions descriptors
        Since:
        11.6RC1
        Default:
        {}
      • extraJARs

        String[] extraJARs
        Returns:
        the optional list of JARs (specified as artifact coordinates groupId:artifactId) that should be added to WEB-INF/lib. For example this is useful for artifacts containing Hibernate mapping files since those cannot currently be loaded as extensions.
        Since:
        10.11RC1
        Default:
        {}
      • resolveExtraJARs

        boolean resolveExtraJARs
        Returns:
        true if the specified extra JAR versions must be resolved (when they're not specified), by checking the transitive list of dependencies in the current POM. Note that there are 2 limitations: resolving takes time and SNAPSHOT versions will be resolved to the latest published SNAPSHOT. This is why it's off by default. When false the current POM version will be used for the missing extra JAR versions. The main use case for using true is in contrib extensions where the current POM version usually don't match extra JARs versions and you may not want to hardcode the version and thus you can let the docker test framework find it for you.
        Since:
        12.5RC1
        Default:
        false
      • sshPorts

        int[] sshPorts
        Returns:
        the list of ports that should be SSH-forwarded when connecting from a Docker container to the host (i.e. when using the host.testcontainers.internal host name). This is in addition to port 8080 which is always added. For example if you need XWiki to send a mail to a SMTP server running on port 3025 on the host, you should add port 3025 to the list.
        Since:
        10.11RC1
        Default:
        {}
      • profiles

        String[] profiles
        Returns:
        the list of Maven profiles to activate when resolving dependencies for the current POM.
        Since:
        10.11RC1
        Default:
        {}
      • office

        boolean office
        Note: The version of LibreOffice is read from the current pom.xml.
        Returns:
        true if LibreOffice must be installed in the Servlet Container.
        Since:
        10.11RC1
        See Also:
        ServletContainerExecutor
        Default:
        false
      • forbiddenEngines

        ServletEngine[] forbiddenEngines
        Returns:
        the list of Servlet Engines on which this test must not be executed. If the Servlet Engine is selected then the test will be skipped
        Since:
        10.11RC1
        Default:
        {}
      • databaseCommands

        String[] databaseCommands
        Returns:
        the list of database docker commands to use and that will override default commands (example of command character-set-server=utf8mb4
        Since:
        11.2RC1
        Default:
        {}
      • saveDatabaseData

        boolean saveDatabaseData
        Returns:
        true if the database data should be mapped to a local directory on the host computer so that it can be saved and reused for another run
        Since:
        10.10RC1
        Default:
        false
      • savePermanentDirectoryData

        boolean savePermanentDirectoryData
        Returns:
        true if the XWiki permanent directory should be preserved after the test is finished and the XWiki container stopped (doesn't make sense for Servlet containers running outside of Docker). Can be useful for debugging purposes
        Since:
        14.5
        Default:
        false