<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.vaadin</groupId> <artifactId>vaadin-root</artifactId> <version>8.10-SNAPSHOT</version> </parent> <artifactId>vaadin-uitest</artifactId> <name>vaadin-uitest</name> <packaging>war</packaging> <properties> <skip.uitest.deployment>true</skip.uitest.deployment> <skip.uitest.failsafe>true</skip.uitest.failsafe> <!-- Don't care about coding style for tests --> <sonar.skip>true</sonar.skip> <!-- Parallel test count --> <parallel.tests>12</parallel.tests> </properties> <url>https://vaadin.com/</url> <description>Vaadin UI tests</description> <repositories> <repository> <id>vaadin-addons</id> <url>https://maven.vaadin.com/vaadin-addons</url> </repository> </repositories> <dependencies> <!-- API DEPENDENCIES --> <dependency> <groupId>javax.portlet</groupId> <artifactId>portlet-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> </dependency> <!-- jetty-servlets needed by ProxyTest, but not by jetty-runner --> <!-- Jetty before vaadin-* on the classpath to make Eclipse use the right version --> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-server</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-servlets</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.eclipse.jetty.websocket</groupId> <artifactId>websocket-server</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-webapp</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-util</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-proxy</artifactId> <scope>provided</scope> </dependency> <!-- LIBRARY DEPENDENCIES (compile time) --> <!-- Project modules --> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-server</artifactId> <version>${project.version}</version> <exclusions> <exclusion> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-client</artifactId> <version>${project.version}</version> <exclusions> <exclusion> <groupId>javax.validation</groupId> <artifactId>javax.servlet-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.google.gwt</groupId> <artifactId>gwt-elemental</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.google.gwt</groupId> <artifactId>gwt-servlet</artifactId> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-client-compiled</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-themes</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-push</artifactId> <version>${project.version}</version> <exclusions> <exclusion> <groupId>javax.validation</groupId> <artifactId>javax.servlet-api</artifactId> </exclusion> </exclusions> </dependency> <!-- Vaadin 7 components --> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-compatibility-client-compiled</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-compatibility-server</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-compatibility-themes</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-compatibility-client</artifactId> <version>${project.version}</version> </dependency> <!-- For compiling TestingWidgetSet --> <dependency> <groupId>${project.groupId}</groupId> <artifactId>vaadin-client-compiler</artifactId> <version>${project.version}</version> <scope>provided</scope> </dependency> <!-- Servlet API --> <dependency> <!-- Jetty requires 3.1.0 --> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> </dependency> <!-- Mainly for SQLContainer tests --> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> </dependency> <!-- This should be removed once tests have been updated to use lang3 --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </dependency> <dependency> <groupId>com.vaadin</groupId> <artifactId>vaadin-sass-compiler</artifactId> </dependency> <dependency> <groupId>org.eclipse.jgit</groupId> <artifactId>org.eclipse.jgit</artifactId> <exclusions> <exclusion> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.vaadin</groupId> <artifactId>vaadin-testbench-api</artifactId> <version>${project.version}</version> <scope>test</scope> </dependency> </dependencies> <build> <resources> <resource> <directory>src/main/themes</directory> <excludes> <exclude>**/*.scss</exclude> </excludes> </resource> <resource> <directory>src/main/resources</directory> </resource> </resources> <plugins> <plugin> <groupId>net.revelc.code.formatter</groupId> <artifactId>formatter-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.github.dantwining.whitespace-maven-plugin</groupId> <artifactId>whitespace-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.vaadin</groupId> <artifactId>vaadin-maven-plugin</artifactId> <configuration> <warSourceDirectory>src/main/themes</warSourceDirectory> <webappDirectory>${project.build.outputDirectory}/VAADIN/widgetsets</webappDirectory> <persistentunitcachedir>${project.build.directory}/gwt-unitCache</persistentunitcachedir> <checkAssertions>true</checkAssertions> <extraJvmArgs>-Xmx1G</extraJvmArgs> </configuration> <executions> <execution> <goals> <goal>compile</goal> <goal>compile-theme</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>${jetty.version}</version> <configuration> <httpConnector> <port>8888</port> </httpConnector> <scanIntervalSeconds>-1</scanIntervalSeconds> <stopPort>8889</stopPort> <stopWait>5</stopWait> <stopKey>foo</stopKey> </configuration> </plugin> <plugin> <artifactId>maven-install-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <configuration> <skip>${skip.uitest.deployment}</skip> </configuration> </plugin> <plugin> <artifactId>maven-failsafe-plugin</artifactId> <configuration> <skip>${skip.uitest.failsafe}</skip> <systemPropertyVariables> <!-- Static path for screenshots pointing to submodule --> <com.vaadin.testbench.Parameters.screenshotReferenceDirectory>${project.basedir}/reference-screenshots</com.vaadin.testbench.Parameters.screenshotReferenceDirectory> <com.vaadin.testbench.Parameters.screenshotErrorDirectory>${project.build.directory}/error-screenshots</com.vaadin.testbench.Parameters.screenshotErrorDirectory> <!-- Optional properties for the test build --> <vaadin.testbench.developer.license>${vaadin.testbench.developer.license}</vaadin.testbench.developer.license> <com.vaadin.testbench.Parameters.maxAttempts>${com.vaadin.testbench.Parameters.maxAttempts}</com.vaadin.testbench.Parameters.maxAttempts> <com.vaadin.testbench.Parameters.testsInParallel>${parallel.tests}</com.vaadin.testbench.Parameters.testsInParallel> <com.vaadin.testbench.hub.url>${com.vaadin.testbench.hub.url}</com.vaadin.testbench.hub.url> <browser.factory>${browser.factory}</browser.factory> <browsers.include>${browsers.include}</browsers.include> <browsers.exclude>${browsers.exclude}</browsers.exclude> <categories.include>${categories.include}</categories.include> <categories.exclude>${categories.exclude}</categories.exclude> <browserstack.identifier>${browserstack.identifier}</browserstack.identifier> </systemPropertyVariables> <includes> <include>**/AllTB3Tests.java</include> </includes> </configuration> <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>animal-sniffer-maven-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <executions> <execution> <id>run-development-server</id> <goals> <goal>exec</goal> </goals> <configuration> <executable>java</executable> <arguments> <argument>-ea</argument> <argument>-classpath</argument> <classpath /> <argument>com.vaadin.launcher.DevelopmentServerLauncher</argument> </arguments> <classpathScope>test</classpathScope> </configuration> </execution> <execution> <id>debug-development-server</id> <goals> <goal>exec</goal> </goals> <configuration> <executable>java</executable> <arguments> <argument>-ea</argument> <argument>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</argument> <argument>-classpath</argument> <classpath /> <argument>com.vaadin.launcher.DevelopmentServerLauncher</argument> </arguments> <classpathScope>test</classpathScope> </configuration> </execution> </executions> </plugin> </plugins> <pluginManagement> <plugins> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <configuration> <skipNexusStagingDeployMojo>true</skipNexusStagingDeployMojo> </configuration> </plugin> <plugin> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </pluginManagement> </build> <profiles> <profile> <!-- Profile used to deploy the uitest war for testing --> <id>dev-build</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <skip.uitest.deployment>false</skip.uitest.deployment> </properties> </profile> <profile> <id>test</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <skip.uitest.failsafe>false</skip.uitest.failsafe> </properties> <build> <pluginManagement> <plugins> <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <executions> <!-- start and stop jetty (running our app) when running integration tests --> <execution> <id>start-jetty</id> <phase>pre-integration-test</phase> <goals> <goal>start</goal> </goals> </execution> <execution> <id>stop-jetty</id> <phase>post-integration-test</phase> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> <profile> <id>measurements</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <skipTests>false</skipTests> </properties> <build> <plugins> <plugin> <artifactId>maven-failsafe-plugin</artifactId> <configuration> <groups>com.vaadin.testcategory.MeasurementTest</groups> </configuration> </plugin> </plugins> </build> </profile> </profiles> </project>