[ 
https://issues.apache.org/jira/browse/SUREFIRE-1472?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tibor Digana updated SUREFIRE-1472:
-----------------------------------
    Description: 
Jenkinsfile exists but it fails on static code analysis.

Performance problem with Publishers on Windows & Jenkins.

Fixing build process and support multiple JDK Versions and platforms 
Linux/Windows.

During the build when running with multiple versions of Maven (3.2.x - 3.5.x) 
and JDK versions (7 - 10) these problems were found and fixed in this Jira 
issue:

 # {{maven-enforcer-plugin}} downloaded {{maven-surefire-api}} from Nexus which 
was previously built with Java 7.
Therefore reordered modules (only {{surefire-api}} module before 
{{surefire-shadefire}}) in the aggregator POM.
 # {{JUnit47ParallelIT}} reported
{{Text not found in log: These tests are incomplete:}}
because the JVM GC blocked the application.
As a workaround is to fork the JVM and log everything to console:
{{.forkOnce()}}
{{.redirectToFile( false )}}
# In ParallelComputerBuilderTest found a problem where the execution time was 
prolonged by calling {{System.gc()}} because {{Stopwatch}} includes the 
execution time spent in {{@Before}} 
 # Improved PC and PCB because this could cause hidden NPE. Added 
{{jvm.args.tests}} into {{argLine}} in order to lax GC.
 # {{UmlautIT}} renames basedir directory to another directory with non-ASCII 
German word Umlaut. There the test threw IOException while renaming the 
directory of integration test because the directory could not be found on 
Windows 7 (Cp1250). The solution would be to create directories in the 
beginning of the test which is more safe than renaming the directory. Added 
maven-clean-plugin:3.0.0.
 # Building the project with old Maven versions caused an error because classes 
from transient dependencies {{maven-shared-utils}} . This happened in the 
project {{maven-failsafe-plugin}}. After shading the artifacts and reduced the 
POM the maven-shade-plugin excluded {{maven-shared-utils}}.
# Unified the configuration of {{maven-surefire-plugin}} in the unit tests and 
configured the parameters: {{jvm}}, {{redirectTestOutputToFile}}, 
{{dependencies}} and added {{JUnit4SuiteTest.java}} as JUnit3 adapter.
# During the build process we could not identify directory of particular test 
configuration because one is overridden. Turned the 
{{Surefire1295AttributeJvmCrashesToTestsIT}} to Theories runner. Additionally 
it seems this IT is not stable because the {{SomeOtherTest.java}} has no delay 
which would be expected to take some time and simulate that the test set was 
interrupted in the middle. This IT interrupts the execution by calling native 
exit() etc.
# Renamed <artifactId>surefire-is</artifactId> to expected 
<artifactId>surefire-its</artifactId>.


  was:
Jenkinsfile exists but it fails on static code analysis.

Performance problem with Publishers on Windows & Jenkins.

Fixing build process and support multiple JDK Versions and platforms 
Linux/Windows.

During the build when running with multiple versions of Maven (3.2.x - 3.5.x) 
and JDK versions (7 - 10) these problems were found and fixed in this Jira 
issue:

 # {{maven-enforcer-plugin}} downloaded {{maven-surefire-api}} from Nexus which 
was previously built with Java 7.
Therefore reordered modules (only {{surefire-api}} module before 
{{surefire-shadefire}}) in the aggregator POM.
 # {{JUnit47ParallelIT}} reported
{{Text not found in log: These tests are incomplete:}}
because the JVM GC blocked the application.
As a workaround is to fork the JVM and log everything to console:
{{.forkOnce()}}
{{.redirectToFile( false )}}
 # Improved PC and PCB because this could cause hidden NPE.
 # {{UmlautIT}} renames basedir directory to another directory with non-ASCII 
German word Umlaut. There the test threw IOException while renaming the 
directory of integration test because the directory could not be found on 
Windows 7 (Cp1250). The solution would be to create directories in the 
beginning of the test which is more safe than renaming the directory. Added 
maven-clean-plugin:3.0.0.
 # Building the project with old Maven versions caused an error because classes 
from transient dependencies {{maven-shared-utils}} . This happened in the 
project {{maven-failsafe-plugin}}. After shading the artifacts and reduced the 
POM the maven-shade-plugin excluded {{maven-shared-utils}}.


> Multibranch Pipeline supports JDK 7-10 Maven 3.2-3.5 Linux Windows
> ------------------------------------------------------------------
>
>                 Key: SUREFIRE-1472
>                 URL: https://issues.apache.org/jira/browse/SUREFIRE-1472
>             Project: Maven Surefire
>          Issue Type: Task
>    Affects Versions: 2.20.1
>         Environment: ASF Jenkins CI
>            Reporter: Tibor Digana
>            Assignee: Tibor Digana
>            Priority: Major
>             Fix For: 2.21.0
>
>
> Jenkinsfile exists but it fails on static code analysis.
> Performance problem with Publishers on Windows & Jenkins.
> Fixing build process and support multiple JDK Versions and platforms 
> Linux/Windows.
> During the build when running with multiple versions of Maven (3.2.x - 3.5.x) 
> and JDK versions (7 - 10) these problems were found and fixed in this Jira 
> issue:
>  # {{maven-enforcer-plugin}} downloaded {{maven-surefire-api}} from Nexus 
> which was previously built with Java 7.
> Therefore reordered modules (only {{surefire-api}} module before 
> {{surefire-shadefire}}) in the aggregator POM.
>  # {{JUnit47ParallelIT}} reported
> {{Text not found in log: These tests are incomplete:}}
> because the JVM GC blocked the application.
> As a workaround is to fork the JVM and log everything to console:
> {{.forkOnce()}}
> {{.redirectToFile( false )}}
> # In ParallelComputerBuilderTest found a problem where the execution time was 
> prolonged by calling {{System.gc()}} because {{Stopwatch}} includes the 
> execution time spent in {{@Before}} 
>  # Improved PC and PCB because this could cause hidden NPE. Added 
> {{jvm.args.tests}} into {{argLine}} in order to lax GC.
>  # {{UmlautIT}} renames basedir directory to another directory with non-ASCII 
> German word Umlaut. There the test threw IOException while renaming the 
> directory of integration test because the directory could not be found on 
> Windows 7 (Cp1250). The solution would be to create directories in the 
> beginning of the test which is more safe than renaming the directory. Added 
> maven-clean-plugin:3.0.0.
>  # Building the project with old Maven versions caused an error because 
> classes from transient dependencies {{maven-shared-utils}} . This happened in 
> the project {{maven-failsafe-plugin}}. After shading the artifacts and 
> reduced the POM the maven-shade-plugin excluded {{maven-shared-utils}}.
> # Unified the configuration of {{maven-surefire-plugin}} in the unit tests 
> and configured the parameters: {{jvm}}, {{redirectTestOutputToFile}}, 
> {{dependencies}} and added {{JUnit4SuiteTest.java}} as JUnit3 adapter.
> # During the build process we could not identify directory of particular test 
> configuration because one is overridden. Turned the 
> {{Surefire1295AttributeJvmCrashesToTestsIT}} to Theories runner. Additionally 
> it seems this IT is not stable because the {{SomeOtherTest.java}} has no 
> delay which would be expected to take some time and simulate that the test 
> set was interrupted in the middle. This IT interrupts the execution by 
> calling native exit() etc.
> # Renamed <artifactId>surefire-is</artifactId> to expected 
> <artifactId>surefire-its</artifactId>.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to