| <?xml version="1.0" encoding="UTF-8"?><!-- |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| --> |
| <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>org.apache.roller</groupId> |
| <artifactId>roller-project</artifactId> |
| <version>5.2.4</version> |
| <relativePath>../pom.xml</relativePath> |
| </parent> |
| |
| <name>Roller Selenium tests</name> |
| <artifactId>roller-selenium-tests</artifactId> |
| <packaging>war</packaging> |
| |
| <!-- Process to run Selenium tests (actually no tests right now, just a skeleton) |
| 1. Tests presently require Firefox browser, Chrome on the to-do list. |
| |
| 2. Run mvn clean install from the roller trunk or app folder, that will install Roller in your |
| local Maven Repository. |
| |
| 3. Navigate to this directory and run mvn integration-test or clean install. Test results will |
| be in target/failsafe-reports. |
| |
| 4. Feel free to add more Selenium tests! |
| --> |
| <dependencies> |
| |
| <dependency> |
| <groupId>org.seleniumhq.selenium</groupId> |
| <artifactId>selenium-java</artifactId> |
| <version>3.4.0</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.seleniumhq.selenium</groupId> |
| <artifactId>selenium-firefox-driver</artifactId> |
| <version>3.4.0</version> |
| </dependency> |
| |
| <!-- Will bring in once we configure a Chrome option --> |
| <!--dependency> |
| <groupId>org.seleniumhq.selenium</groupId> |
| <artifactId>selenium-chrome-driver</artifactId> |
| <version>${selenium.version}</version> |
| </dependency--> |
| |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <!-- |
| Type "war" listed below makes this a WAR overlay (i.e., incorporating |
| another WAR into this project in making a new WAR, with any additional |
| WAR configuration provided (here, none) going into the new WAR. |
| --> |
| <dependency> |
| <groupId>org.apache.roller</groupId> |
| <artifactId>roller-webapp</artifactId> |
| <version>${project.version}</version> |
| <type>war</type> |
| </dependency> |
| |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| </dependency> |
| |
| </dependencies> |
| |
| <build> |
| <plugins> |
| |
| <!-- Activates integration tests (by default, classes under tests that end with "IT") |
| --> |
| <plugin> |
| <artifactId>maven-failsafe-plugin</artifactId> |
| <version>2.20</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>integration-test</goal> |
| <goal>verify</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Activates the Derby database during the integration test phase --> |
| <plugin> |
| <groupId>com.btmatthews.maven.plugins.inmemdb</groupId> |
| <artifactId>inmemdb-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>run</id> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <configuration> |
| <daemon>true</daemon> |
| <type>derby</type> |
| <database>rollerdb</database> |
| <username>APP</username> |
| <password>APP</password> |
| <port>4224</port> |
| <sources> |
| <script> |
| <sourceFile>target/roller-selenium-tests-${project.version}/WEB-INF/classes/dbscripts/derby/createdb.sql</sourceFile> |
| </script> |
| </sources> |
| </configuration> |
| </execution> |
| <execution> |
| <id>stop</id> |
| <!-- Moving later to verify phase from post-integration-test. Reason: Jetty shutdown wants |
| to close database or will raise error messages. --> |
| <phase>verify</phase> |
| <goals> |
| <goal>stop</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Activates the Roller application during the integration test phase --> |
| <plugin> |
| <groupId>org.eclipse.jetty</groupId> |
| <artifactId>jetty-maven-plugin</artifactId> |
| <configuration> |
| <stopKey>selenium</stopKey> |
| <stopPort>9999</stopPort> |
| <webApp> |
| <contextPath>/roller</contextPath> |
| </webApp> |
| <webAppSourceDirectory>target/roller-selenium-tests-${project.version}</webAppSourceDirectory> |
| <jettyXml>../app/src/test/resources/jetty.xml</jettyXml> |
| <systemProperties> |
| <systemProperty> |
| <name>roller.custom.config</name> |
| <value>src/test/resources/roller-jettyrun.properties</value> |
| </systemProperty> |
| </systemProperties> |
| </configuration> |
| <executions> |
| <execution> |
| <id>start-jetty</id> |
| <phase>pre-integration-test</phase> |
| <goals> |
| <goal>start</goal> |
| </goals> |
| <configuration> |
| <scanIntervalSeconds>0</scanIntervalSeconds> |
| <!-- <daemon>true</daemon> --> |
| </configuration> |
| </execution> |
| <execution> |
| <id>stop-jetty</id> |
| <phase>post-integration-test</phase> |
| <goals> |
| <goal>stop</goal> |
| </goals> |
| </execution> |
| </executions> |
| <dependencies> |
| |
| <dependency> |
| <groupId>org.apache.derby</groupId> |
| <artifactId>derby</artifactId> |
| <version>${derby.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.derby</groupId> |
| <artifactId>derbyclient</artifactId> |
| <version>${derby.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>javax.mail</groupId> |
| <artifactId>mail</artifactId> |
| <version>1.4.7</version> |
| </dependency> |
| |
| </dependencies> |
| </plugin> |
| </plugins> |
| </build> |
| |
| </project> |