Ich bin ein Anfänger in Java EE Ich habe ein kleines Maven-Web-Projekt mit Intellij IDE. der Server der Bereitstellung ist WildFly. Ich möchte Arquillian Junit Test zu einem Class BookRepositoryTest machen. pom.xmlArquillian Junit Test funktioniert nicht
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" 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>
<groupId>com.pluralsight.bookstore</groupId>
<artifactId>bookstore-back</artifactId>
<version>1.0</version>
<packaging>war</packaging>
<name>bookstore-back</name>
<properties>
<endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- Test -->
<version.junit>4.12</version.junit>
<version.arquillian>1.1.13.5</version.arquillian>
<version.arquillian.wildfly>2.0.2.Final</version.arquillian.wildfly>
<version.shrinkwrap>1.2.6</version.shrinkwrap>
<!-- Plugins -->
<version.surefire.plugin>2.19.1</version.surefire.plugin>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.arquillian</groupId>
<artifactId>arquillian-universe</artifactId>
<version>${version.arquillian}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<!-- TEST -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${version.junit}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.arquillian.universe</groupId>
<artifactId>arquillian-junit</artifactId>
<scope>test</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-remote</artifactId>
<version>${version.arquillian.wildfly}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap</groupId>
<artifactId>shrinkwrap-api</artifactId>
<version>${version.shrinkwrap}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>bookstore-back</finalName>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${version.surefire.plugin}</version>
<configuration>
<systemPropertyVariables>
<arquillian.launch>arquillian-wildfly-remote</arquillian.launch>
</systemPropertyVariables>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<compilerArguments>
<endorseddirs>${endorsed.dir}</endorseddirs>
</compilerArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<outputDirectory>${endorsed.dir}</outputDirectory>
<silent>true</silent>
<artifactItems>
<artifactItem>
<groupId>javax</groupId>
<artifactId>javaee-endorsed-api</artifactId>
<version>7.0</version>
<type>jar</type>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>src</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
</project>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<arquillian
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://jboss.org/schema/arquillian"
xsi:schemaLocation="http://jboss.org/schema/arquillian http://jboss.org/schema/arquillian/arquillian_1_0.xsd">
<container qualifier="arquillian-wildfly-remote"/>
</arquillian>
die Fehler löschte java.lang.RuntimeException: Es konnte keine neue Instanz der Klasse erstellen org .jboss.arquillian.test.impl.EventTestRunnerAdaptor
at org.jboss.arquillian.test.spi.SecurityActions.newInstance(SecurityActions.java:166)
at org.jboss.arquillian.test.spi.SecurityActions.newInstance(SecurityActions.java:103)
at org.jboss.arquillian.test.spi.TestRunnerAdaptorBuilder.build(TestRunnerAdaptorBuilder.java:52)
at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:114)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Verursacht durch: java.lang.reflect.InvocationTargetException bei sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Mutter Methode) bei sun.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62) bei sun.reflect .DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45) bei java.lang.reflect.Constructor.newInstance (Constructor.java:423) bei org.jboss.arquillian.test.spi.SecurityActions.newInstance (SecurityActions.java:162) ... 8 mehr verursacht durch: java.lang.IllegalArgumentException: Kein Container oder eine Gruppe gefunden, die mit dem angegebenen Qualifikationsmerkmal übereinstimmen: arquillian.xm l bei org.jboss.arquillian.container.impl.client.container.ContainerRegistryCreator.createRegistry (ContainerRegistryCreator.java:127) bei sun.reflect.NativeMethodAccessorImpl.invoke0 (native Methode) bei sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) bei sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) bei java.lang.reflect.Method.invoke (Method.java:498) bei org.jboss.arquillian.core. impl.ObserverImpl.invoke (ObserverImpl.java:96) bei org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers (EventContextImpl.java:103) bei org.jboss.arquillian.core.impl.EventContextImpl.proceed (EventContextImpl.java:85) bei org.jboss.arquillian.core.i mpl.ManagerImpl.fire (ManagerImpl.java:143) bei org.jboss.arquillian.core.impl.ManagerImpl.fire (ManagerImpl.java:114) bei org.jboss.arquillian.core.impl.ManagerImpl.bindAndFire (ManagerImpl.java:263) bei org.jboss.arquillian.core.impl.InstanceImpl.set (InstanceImpl.java:74) bei org.jboss.arquillian.config.impl.extension.ConfigurationRegistrar.loadConfiguration (ConfigurationRegistrar.java: 73) bei sun.reflect.NativeMethodAccessorImpl.invoke0 (native Methode) bei sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) bei sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) bei Java .lang.reflect.Method.invoke (Methode.java:498) bei org.jboss.arquillian.core.i mpl.ObserverImpl.invoke (ObserverImpl.java:96) bei org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers (EventContextImpl.java:103) bei org.jboss.arquillian.core.impl.EventContextImpl.proceed (EventContextImpl.java:85) bei org.jboss.arquillian.core.impl.ManagerImpl.fire (ManagerImpl.java:143) bei org.jboss.arquillian.core.impl.ManagerImpl.fire (ManagerImpl.java:114) bei org.jboss.arquillian.core.impl.ManagerImpl.start (ManagerImpl.java:. 288) bei org.jboss.arquillian.test.impl.EventTestRunnerAdaptor (EventTestRunnerAdaptor.java:63) ... 13 weiteren
-Test ignoriert.
Prozess mit Exit-Code beendet -1
Wie konfigurierst und startest du WildFly vor dem Test? Sie verwenden den Remote-Container-Adapter, so dass der Server im Voraus ausgeführt werden muss. Wenn Sie möchten, dass sich Arquillian um die Verwaltung Ihres Server-Lebenszyklus kümmert, verwenden Sie den verwalteten Adapter. Werfen Sie auch einen Blick auf Arquillian Chameleon Projekt - vereinfacht die Konfiguration für App-Server erheblich. –