can't execute test in arquillian
otoleddo Mar 11, 2014 4:03 PMI am trying to create a project with jboss 7.1.1, Arquillian with TestNG, and maven. The project will be create using the maven's archetype jboss-javaee6-webapp-ear-archetype-blank. The problem arises when I want to run integration tests with Arquillian, deployment are creates, but does not run the test, even with the jboss in managed mode is waiting to run the test.
This is my root project POM
<?xml version="1.0" encoding="UTF-8"?> <!-- JBoss, Home of Professional Open Source Copyright 2013, Red Hat, Inc. and/or its affiliates, and individual contributors by the @authors tag. See the copyright.txt in the distribution for a full listing of individual contributors. Licensed 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/maven-v4_0_0.xsd"> <name>sigenu</name> <modelVersion>4.0.0</modelVersion> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu</artifactId> <version>1.0-SNAPSHOT</version> <packaging>pom</packaging> <url>http://jboss.org/jbossas</url> <repositories> <repository> <id>primefaces-repository</id> <name>Primefaces repository</name> <url>http://repository.primefaces.org</url> </repository> <repository> <id>mvn-repository</id> <name>MVNrepository</name> <url>http://mvnrepository.com</url> </repository> </repositories> <licenses> <license> <name>Apache License, Version 2.0</name> <distribution>repo</distribution> <url>http://www.apache.org/licenses/LICENSE-2.0.html</url> </license> </licenses> <modules> <module>sigenu-app</module> <module>sigenu-web</module> <module>sigenu-admin-web</module> <module>sigenu-study-program-web</module> <module>sigenu-dss-web</module> <module>sigenu-core</module> <module>sigenu-dss-core</module> <module>sigenu-study-program-core</module> <module>sigenu-jsf-utils</module> <module>sigenu-report-utils</module> <module>sigenu-validation-utils</module> </modules> <properties> <!-- Explicitly declaring the source encoding eliminates the following message: --> <!-- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- JBoss dependency versions --> <version.jboss.maven.plugin>7.4.Final</version.jboss.maven.plugin> <!-- Define the version of the JBoss BOMs we want to import to specify tested stacks. --> <version.jboss.bom>1.0.7.Final</version.jboss.bom> <!-- Alternatively, comment out the above line, and un-comment the line below to use version 1.0.4.Final-redhat-4 which is a release certified to work with JBoss EAP 6. It requires you have access to the JBoss EAP 6 maven repository. --> <!-- <version.jboss.bom>1.0.4.Final-redhat-4</version.jboss.bom>> --> <version.jboss.as>7.2.0.Final</version.jboss.as> <!-- Alternatively, comment out the above line, and un-comment the line below to use version 7.2.0.Final-redhat-8 which is a release certified to work with JBoss EAP 6. It requires you have access to the JBoss EAP 6 maven repository. --> <!-- <version.jboss.as>7.2.0.Final-redhat-8</version.jboss.as> --> <!-- Version for Spring Framework--> <version.spring.framework>4.0.0.RELEASE</version.spring.framework> <!-- Version for Spring Security Framework--> <version.springsecurity.framework>3.2.1.RELEASE</version.springsecurity.framework> <!-- other plugin versions --> <version.ear.plugin>2.6</version.ear.plugin> <version.ejb.plugin>2.3</version.ejb.plugin> <version.surefire.plugin>2.10</version.surefire.plugin> <version.war.plugin>2.1.1</version.war.plugin> <!-- maven-compiler-plugin --> <maven.compiler.target>1.7</maven.compiler.target> <maven.compiler.source>1.7</maven.compiler.source> </properties> <dependencyManagement> <dependencies> <!-- Define the version of the EJB jar so that we don't need to repeat ourselves in every module --> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-core</artifactId> <version>${project.version}</version> <type>ejb</type> </dependency> <!-- Define the version of the WAR so that we don't need to repeat ourselves in every module --> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-dss-core</artifactId> <version>${project.version}</version> <type>ejb</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-app</artifactId> <version>${project.version}</version> <type>ear</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-report-utils</artifactId> <version>${project.version}</version> <type>jar</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-jsf-utils</artifactId> <version>${project.version}</version> <type>jar</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-admin-web</artifactId> <version>${project.version}</version> <type>war</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-dss-web</artifactId> <version>${project.version}</version> <type>war</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-study-program-core</artifactId> <version>${project.version}</version> <type>ejb</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-study-program-web</artifactId> <version>${project.version}</version> <type>war</type> </dependency> <dependency> <groupId>cu.edu.cujae.ceis</groupId> <artifactId>sigenu-web</artifactId> <version>${project.version}</version> <type>war</type> </dependency> <!-- JBoss distributes a complete set of Java EE 6 APIs including a Bill of Materials (BOM). A BOM specifies the versions of a "stack" (or a collection) of artifacts. We use this here so that we always get the correct versions of artifacts. Here we use the jboss-javaee-6.0-with-tools stack (you can read this as the JBoss stack of the Java EE 6 APIs, with some extras tools for your project, such as Arquillian for testing) and the jboss-javaee-6.0-with-hibernate stack you can read this as the JBoss stack of the Java EE 6 APIs, with extras from the Hibernate family of projects) --> <dependency> <groupId>org.jboss.bom</groupId> <artifactId>jboss-javaee-6.0-with-tools</artifactId> <version>${version.jboss.bom}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.jboss.bom</groupId> <artifactId>jboss-javaee-6.0-with-hibernate</artifactId> <version>${version.jboss.bom}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.selenium</groupId> <artifactId>selenium-bom</artifactId> <version>2.37.1</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.extension</groupId> <artifactId>arquillian-drone-bom</artifactId> <version>1.2.0.Final</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.jboss.arquillian</groupId> <artifactId>arquillian-bom</artifactId> <version>1.1.2.Final</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.extension</groupId> <artifactId>arquillian-jacoco</artifactId> <version>1.0.0.Alpha5</version> <scope>test</scope> </dependency> <dependency> <groupId>org.jacoco</groupId> <artifactId>org.jacoco.core</artifactId> <version>0.6.0.201210061924</version> <scope>test</scope> </dependency> <dependency> <groupId>asm</groupId> <artifactId>asm-util</artifactId> <version>3.3.1</version> <scope>test</scope> </dependency> <!-- Set of libraries for Spring Framework --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-framework-bom</artifactId> <version>${version.spring.framework}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- Set of libraries for Spring Security Framework --> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-bom</artifactId> <version>${version.springsecurity.framework}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- Primefaces Libraries --> <dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> <version>4.0</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.primefaces.themes</groupId> <artifactId>all-themes</artifactId> <version>1.0.10</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.omnifaces</groupId> <artifactId>omnifaces</artifactId> <version>1.6.2</version> <scope>runtime</scope> </dependency> <!-- Envers Library for generate entity trace --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-envers</artifactId> <version>4.0.1.Final</version> <scope>provided</scope> </dependency> <!-- Mockito Libraries for unit test --> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <version>1.9.5</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>1.9.5</version> <scope>test</scope> </dependency> <!-- Other library are needed --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.2.1</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.7</version> <scope>runtime</scope> </dependency> <dependency> <groupId>net.java.dev.rome</groupId> <artifactId>rome</artifactId> <version>1.0.0</version> <scope>runtime</scope> </dependency> <dependency> <groupId>com.lowagie</groupId> <artifactId>itext</artifactId> <version>2.1.7</version> <scope>runtime</scope> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>1.4</version> <scope>runtime</scope> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <!-- The JBoss AS plugin deploys your ear to a local JBoss AS container --> <!-- Due to Maven's lack of intelligence with EARs we need to configure the jboss-as maven plugin to skip deployment for all modules. We then enable it specifically in the ear module. --> <plugin> <groupId>org.jboss.as.plugins</groupId> <artifactId>jboss-as-maven-plugin</artifactId> <version>${version.jboss.maven.plugin}</version> <inherited>true</inherited> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>
And this is my project POM
<?xml version="1.0" encoding="UTF-8"?> <!-- JBoss, Home of Professional Open Source Copyright 2013, Red Hat, Inc. and/or its affiliates, and individual contributors by the @authors tag. See the copyright.txt in the distribution for a full listing of individual contributors. Licensed 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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <artifactId>sigenu</artifactId> <groupId>cu.edu.cujae.ceis</groupId> <version>1.0-SNAPSHOT</version> </parent> <artifactId>sigenu-core</artifactId> <packaging>ejb</packaging> <name>sigenu-core</name> <url>http://jboss.org/jbossas</url> <licenses> <license> <name>Apache License, Version 2.0</name> <distribution>repo</distribution> <url>http://www.apache.org/licenses/LICENSE-2.0.html</url> </license> </licenses> <dependencies> <!-- Declare the APIs we depend on and need for compilation. All of them are provided by JBoss AS 7 --> <!-- Import the EJB API, we use provided scope as the API is included in JBoss AS 7 --> <dependency> <groupId>org.jboss.spec.javax.ejb</groupId> <artifactId>jboss-ejb-api_3.1_spec</artifactId> <scope>provided</scope> </dependency> <!-- Import the CDI API, we use provided scope as the API is included in JBoss AS 7 --> <dependency> <groupId>javax.enterprise</groupId> <artifactId>cdi-api</artifactId> <scope>provided</scope> </dependency> <!-- Import the JPA API, we use provided scope as the API is included in JBoss AS 7 --> <dependency> <groupId>org.hibernate.javax.persistence</groupId> <artifactId>hibernate-jpa-2.0-api</artifactId> <scope>provided</scope> </dependency> <!-- JSR-303 (Bean Validation) Implementation --> <!-- Provides portable constraints such as @Email --> <!-- Hibernate Validator is shipped in JBoss AS 7 --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <scope>provided</scope> </dependency> <!-- Test scope dependencies --> <!-- <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> --> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <scope>test</scope> </dependency> <!-- Optional, but highly recommended --> <!-- Arquillian allows you to test enterprise code such as EJBs and Transactional(JTA) JPA from JUnit/TestNG --> <!-- <dependency> <groupId>org.jboss.arquillian.junit</groupId> <artifactId>arquillian-junit-container</artifactId> <scope>test</scope> </dependency> --> <dependency> <groupId>org.jboss.arquillian.testng</groupId> <artifactId>arquillian-testng-container</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.protocol</groupId> <artifactId>arquillian-protocol-servlet</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.extension</groupId> <artifactId>arquillian-jacoco</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jacoco</groupId> <artifactId>org.jacoco.core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>asm</groupId> <artifactId>asm-util</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.shrinkwrap.resolver</groupId> <artifactId>shrinkwrap-resolver-impl-maven</artifactId> <scope>test</scope> </dependency> <!-- Mockito Libraries for unit test --> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <plugins> <plugin> <artifactId>maven-ejb-plugin</artifactId> <version>${version.ejb.plugin}</version> <configuration> <!-- Tell Maven we are using EJB 3.1 --> <ejbVersion>3.1</ejbVersion> </configuration> </plugin> </plugins> </build> <profiles> <profile> <!-- The default profile skips all tests, though you can tune it to run just unit tests based on a custom pattern --> <!-- Seperate profiles are provided for running all tests, including Arquillian tests that execute in the specified container --> <id>default</id> <activation> <activeByDefault>true</activeByDefault> </activation> <build> <plugins> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>${version.surefire.plugin}</version> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </build> </profile> <profile> <!-- An optional Arquillian testing profile that executes tests in your JBoss AS instance --> <!-- This profile will start a new JBoss AS instance, and execute the test, shutting it down when done --> <!-- Run with: mvn clean test -Parq-jbossas-managed --> <id>arq-jbossas-managed</id> <dependencies> <dependency> <groupId>org.jboss.as</groupId> <artifactId>jboss-as-arquillian-container-managed</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.protocol</groupId> <artifactId>arquillian-protocol-servlet</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.testng</groupId> <artifactId>arquillian-testng-container</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.spec</groupId> <artifactId>jboss-javaee-6.0</artifactId> <version>1.0.0.Final</version> <type>pom</type> <scope>provided</scope> </dependency> <!-- <dependency> <groupId>xalan</groupId> <artifactId>xalan</artifactId> <version>2.7.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.arquillian.junit</groupId> <artifactId>arquillian-junit-container</artifactId> <scope>test</scope> </dependency> --> </dependencies> <build> <testResources> <testResource> <directory>src/test/resources</directory> </testResource> </testResources> </build> </profile> <profile> <!-- An optional Arquillian testing profile that executes tests in a remote JBoss AS instance --> <!-- Run with: mvn clean test -Parq-jbossas-remote --> <id>arq-jbossas-remote</id> <dependencies> <dependency> <groupId>org.jboss.as</groupId> <artifactId>jboss-as-arquillian-container-remote</artifactId> <scope>test</scope> </dependency> </dependencies> </profile> </profiles> </project>
Excuse me for my english