私たちは、Mavenフレームワークに基づいたマルチモジュールからなるテストスイートを用意しています。使用されるモジュール -マルチモジュールテストスイートとのアレンチュアの統合
project
[いいえコード]test
[@Test
クラスは、/SRC /メイン/ javaの下に含ま/SRC /メイン/リソースでtestng.xml
れる]core
[構成driver
[テストバケットを構成し、testngを使用してレポート生成を変調する] を統合しようとする
、私はプロジェクトpom.xml
に以下を追加しました - としても
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<argLine>
-javaagent:${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar
</argLine>
<properties>
<property>
<name>listener</name>
<value>ru.yandex.qatools.allure.junit.AllureRunListener</value>
</property>
</properties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<source>${jdk.version}</source>
<target>${jdk.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>${maven-deploy-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.2.10.v20150310</version>
<configuration>
<webAppSourceDirectory>${project.build.directory}/site/allure-maven-plugin</webAppSourceDirectory>
<stopKey>stop</stopKey>
<stopPort>1234</stopPort>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<excludeDefaults>true</excludeDefaults>
<plugins>
<plugin>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</reporting>
テストpom.xml
に同じの依存関係 -
<!--allure related dependencies-->
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-testng-adaptor</artifactId>
<version>1.4.16</version>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.detro.ghostdriver</groupId>
<artifactId>phantomjsdriver</artifactId>
<version>1.0.4</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-java-annotations</artifactId>
<version>1.5.0.RC2</version>
</dependency>
ステップ1から
mvn exec:java -pl driver
テストを実行した後、私は/標的/魅力-結果フォルダが生成さ見ることができます。ステップ2から
mvn jetty:run
桟橋サーバーにステップ3スタート読み込み - しかし、私はローカルホストに行くとき:私のブラウザで8080それはちょうど見出し
ディレクトリを持っています:/
質問
私は桟橋レポートを見つけることができないですが、どこを見つけ出すことができなかったので、私が指定したパスがどこか間違っている疑い。実行されるテスト用か、リソース内の
testng.xml
用ですか? または、POMのどこかでパスを修正する必要がありますか?また、依存関係(親の
project
pom)を使用しようとしている方法は正しいですか?
更新1
次のように使用されるEXECコンフィギュレーションは、 -
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.5.0</version>
<configuration>
<mainClass>com.driver.Driver</mainClass>
</configuration>
</plugin>
</plugins>
</build>
任意応答を感謝。
1.いいえ、私たちは 'mvn clean test'を使ってテストを実行しません。 2.私たちは今のところCIのためにレポートを使用したいと思います。 3.すでに「ターゲット/魅力結果フォルダが生成されています。 step1の 'mvn exec..'の後に。 4.モジュール固有のpomでは 'dependencies'を使用しています。親pomで' pluginManagement'を使用しているプラグインだけです。 – nullpointer
@nullpointer Jettyエラーについての私の更新を確認して、私はそれを複製することができました。 'exec'設定に関しては、[ここに報告されたもの](https://github.com/allure-framework/allure-core/blob/master/allure-report-preview/pom.xml)と似ていますか? –
私はまだ投稿した問題を解決しません。マルチモジュールとmvn exec:javaは私が探している組み合わせの中にあります。答えに共有されている情報は、魅力レポートや桟橋の実装について多くのことを理解し、それを実装する方向に向かううえで役立ち、報奨金も受け入れられることは間違いありません。 – nullpointer