рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡

рдЖрдордЪрд╛ рд╡рд┐рднрд╛рдЧ рдЙрддреНрдкрд╛рджрди рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдЪреНрдпрд╛ рдирд╡реАрди рдЖрд╡реГрддреНрддреНрдпрд╛ рд▓реЙрдиреНрдЪ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреВрд░реНрдгрдкрдгреЗ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдкрд╛рдЗрдкрд▓рд╛рдЗрди рддрдпрд╛рд░ рдХрд░рддреЛ. рдЕрд░реНрдерд╛рдд, рдпрд╛рд╕рд╛рдареА рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЪрд╛рдЪрдгреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд. рд╕реНрдерд╛рдирд┐рдХ рдорд╢реАрдирд╡рд░ рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдб рдЪрд╛рдЪрдгреАрдкрд╛рд╕реВрди рд╕реБрд░реБрд╡рд╛рдд рдХрд░реВрди, рдЖрдореНрд╣реА рдЧрд┐рдЯрд▓реЕрдм рдкреГрд╖реНрдард╛рдВрд╡рд░ рдЕрд▓реНрдпреБрдЕрд░ рдЕрд╣рд╡рд╛рд▓рд╛рд╕рд╣ рдмрд┐рд▓реНрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдордзреНрдпреЗ рд╕реЗрд▓реЗрдиреЛрдЗрдбрд╡рд░ рдЪрд╛рд▓рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдСрдЯреЛрдЯреЗрд╕реНрдЯрдЪреНрдпрд╛ рдЯрдкреНрдкреНрдпрд╛рдкрд░реНрдпрдВрдд рдкреЛрд╣реЛрдЪрд▓реЛ рдЖрдгрд┐ рд╢реЗрд╡рдЯреА рдПрдХ рдЫрд╛рди рдСрдЯреЛрдореЗрд╢рди рдЯреВрд▓ рдХрд╕реЗ рдорд┐рд│рд╡рд▓реЗ рдпрд╛рдмрджреНрджрд▓рдЪреА рдХрдерд╛ рдЦрд╛рд▓реА рджрд┐рд▓реА рдЖрд╣реЗ. рдЬреЗрдгреЗрдХрд░реВрди рднрд╡рд┐рд╖реНрдпрд╛рддреАрд▓ рд▓реЛрдХ рд╕рдВрдШ рд╡рд╛рдкрд░реВ рд╢рдХрддреАрд▓.

рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡

рдЖрдореНрд╣реА рдХреБрдареЗ рд╕реБрд░реБрд╡рд╛рдд рдХреЗрд▓реА?

рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рдЕрдВрдорд▓рд╛рдд рдЖрдгрдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рддреНрдпрд╛рдВрдирд╛ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдордзреНрдпреЗ рд╕рдорд╛рдХрд▓рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣рд╛рд▓рд╛ рдСрдЯреЛрдореЗрд╢рди рдлреНрд░реЗрдорд╡рд░реНрдХрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рдЬреА рдЖрдордЪреНрдпрд╛ рдЧрд░рдЬрд╛рдВрдиреБрд╕рд╛рд░ рд▓рд╡рдЪрд┐рдХрдкрдгреЗ рдмрджрд▓рд▓реА рдЬрд╛рдК рд╢рдХрддреЗ. рдЖрджрд░реНрд╢рдкрдгреЗ, рдорд▓рд╛ рдСрдЯреЛрдЯреЗрд╕реНрдЯрд┐рдВрдЧ рдЗрдВрдЬрд┐рдирд╕рд╛рдареА рдПрдХрдЪ рдорд╛рдирдХ рдорд┐рд│рд╡рд╛рдпрдЪреЗ рд╣реЛрддреЗ, рдЬреЗ рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдордзреНрдпреЗ рдПрдореНрдмреЗрдб рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрд╡реАрдХрд╛рд░рд▓реЗ рдЧреЗрд▓реЗ. рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╛рдареА рдЖрдореНрд╣реА рдЦрд╛рд▓реАрд▓ рддрдВрддреНрд░рдЬреНрдЮрд╛рди рдирд┐рд╡рдбрд▓реЗ:

  • рдЬрд╛рд╡рд╛,
  • рдорд╛рд╡реЗрди,
  • рд╕реЗрд▓реЗрдирд┐рдпрдо,
  • рдХрд╛рдХрдбреА+рдЬреВрдирд┐рдЯ рек,
  • рдореЛрд╣,
  • рдЧрд┐рдЯрд▓реЕрдм.

рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡

рд╣рд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЪ рдХрд╛? рдЬрд╛рд╡рд╛ рд╣реА рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛рдВрд╕рд╛рдареА рд╕рд░реНрд╡рд╛рдд рд▓реЛрдХрдкреНрд░рд┐рдп рднрд╛рд╖рд╛рдВрдкреИрдХреА рдПрдХ рдЖрд╣реЗ рдЖрдгрд┐ рд╕рд░реНрд╡ рдХрд╛рд░реНрдпрд╕рдВрдШ рд╕рджрд╕реНрдп рддреА рдмреЛрд▓рддрд╛рдд. рд╕реЗрд▓реЗрдирд┐рдпрдо рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдЙрдкрд╛рдп рдЖрд╣реЗ. рдХрд╛рдХрдбреА, рдЗрддрд░ рдЧреЛрд╖реНрдЯреАрдВрдмрд░реЛрдмрд░рдЪ, рдореЕрдиреНрдпреБрдЕрд▓ рдЪрд╛рдЪрдгреАрдордзреНрдпреЗ рдЧреБрдВрддрд▓реЗрд▓реНрдпрд╛ рд╡рд┐рднрд╛рдЧрд╛рдВрдЪреНрдпрд╛ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреНрдпрд╛ рдирд┐рдХрд╛рд▓рд╛рдВрд╡рд░ рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕ рд╡рд╛рдврд╡рд╛рдпрдЪрд╛ рд╣реЛрддрд╛.

рд╕рд┐рдВрдЧрд▓ рдереНрд░реЗрдбреЗрдб рдЪрд╛рдЪрдгреНрдпрд╛

рдЪрд╛рдХ рдкреБрдиреНрд╣рд╛ рд╢реЛрдзреВ рдирдпреЗ рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА рдлреНрд░реЗрдорд╡рд░реНрдХрдЪрд╛ рдЖрдзрд╛рд░ рдореНрд╣рдгреВрди GitHub рд╡рд░реАрд▓ рд╡рд┐рд╡рд┐рдз рд░рд┐рдкреЙрдЭрд┐рдЯрд░реАрдЬрдордзреВрди рдШрдбрд╛рдореЛрдбреА рдШреЗрддрд▓реНрдпрд╛ рдЖрдгрд┐ рддреНрдпрд╛ рд╕реНрд╡рддрдГрд╕рд╛рдареА рдЕрдиреБрдХреВрд▓ рдХреЗрд▓реНрдпрд╛. рдЖрдореНрд╣реА рдореБрдЦреНрдп рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╛рдареА рдСрдЯреЛрдЯреЗрд╕реНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХрдЪреНрдпрд╛ рдХреЛрд░рд╕рд╣ рднрд╛рдВрдбрд╛рд░ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛ рдХреЛрд░рд╡рд░ рдСрдЯреЛрдЯреЗрд╕реНрдЯ рд▓рд╛рдЧреВ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рд╕реБрд╡рд░реНрдг рдЙрджрд╛рд╣рд░рдгрд╛рд╕рд╣ рдПрдХ рднрд╛рдВрдбрд╛рд░ рддрдпрд╛рд░ рдХреЗрд▓рд╛. рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдШрд╛рд▓рд╛ рдЧреЛрд▓реНрдб рдЗрдореЗрдЬ рдШреНрдпрд╛рдпрдЪреА рд╣реЛрддреА рдЖрдгрд┐ рддреНрдпрд╛рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рд╛рдпрдЪреНрдпрд╛ рд╣реЛрддреНрдпрд╛, рддреНрдпрд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдЬреБрд│рд╡реВрди рдШреНрдпрд╛рдпрдЪреНрдпрд╛ рд╣реЛрддреНрдпрд╛. рдЖрдореНрд╣реА рддреЗ GitLab-CI рдмрдБрдХреЗрдд рддреИрдирд╛рдд рдХреЗрд▓реЗ, рдЬреНрдпрд╛рд╡рд░ рдЖрдореНрд╣реА рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЗрд▓реЗ:

  • рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд▓реНрдкрд╛рд╕рд╛рдареА рд╕рд░реНрд╡ рд▓рд┐рдЦрд┐рдд рд╕реНрд╡рдпрдВрдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреЗ рджреИрдирд┐рдХ рдзрд╛рд╡рдгреЗ;
  • рдмрд┐рд▓реНрдб рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдордзреНрдпреЗ рд▓рд╛рдБрдЪ рдХрд░рддреЗ.

рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ рдХрд╛рд╣реА рдЪрд╛рдЪрдгреНрдпрд╛ рд╣реЛрддреНрдпрд╛ рдЖрдгрд┐ рддреНрдпрд╛ рдПрдХрд╛рдЪ рдкреНрд░рд╡рд╛рд╣рд╛рдд рдШреЗрддрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛. рд╡рд┐рдВрдбреЛрдЬ рд░рдирд░ рдЧрд┐рдЯрд▓реЕрдмрд╡рд░ рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдбреЗрдб рд░рдирд┐рдВрдЧ рдЖрдореНрд╣рд╛рд▓рд╛ рдЦреВрдк рдЕрдиреБрдХреВрд▓ рдЖрд╣реЗ: рдЪрд╛рдЪрдгреНрдпрд╛рдВрдиреА рдЪрд╛рдЪрдгреА рдмреЗрдВрдЪ рдЦреВрдк рд╣рд▓рдХреЗ рд▓реЛрдб рдХреЗрд▓реЗ рдЖрдгрд┐ рдЬрд╡рд│рдЬрд╡рд│ рдХреЛрдгрддреАрд╣реА рд╕рдВрд╕рд╛рдзрдиреЗ рд╡рд╛рдкрд░рд▓реА рдирд╛рд╣реАрдд.

рдХрд╛рд▓рд╛рдВрддрд░рд╛рдиреЗ, рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕рдЪреА рд╕рдВрдЦреНрдпрд╛ рдЕрдзрд┐рдХрд╛рдзрд┐рдХ рдЕрд╕рдВрдЦреНрдп рд╣реЛрдд рдЧреЗрд▓реА рдЖрдгрд┐ рдЖрдореНрд╣реА рддреНрдпрд╛рдВрдирд╛ рд╕рдорд╛рдВрддрд░ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛, рдЬреЗрд╡реНрд╣рд╛ рдкреВрд░реНрдг рдзрд╛рд╡рд╛рдпрд▓рд╛ рд╕реБрдорд╛рд░реЗ рддреАрди рддрд╛рд╕ рд▓рд╛рдЧрд╛рдпрд▓рд╛ рд▓рд╛рдЧрд▓реЗ. рдЗрддрд░ рд╕рдорд╕реНрдпрд╛ рджреЗрдЦреАрд▓ рджрд┐рд╕реВ рд▓рд╛рдЧрд▓реНрдпрд╛:

  • рдЖрдореНрд╣реА рддрдкрд╛рд╕реВ рд╢рдХрд▓реЛ рдирд╛рд╣реА рдХреА рдЪрд╛рдЪрдгреНрдпрд╛ рд╕реНрдерд┐рд░ рдЖрд╣реЗрдд;
  • рд╕реНрдерд╛рдирд┐рдХ рдорд╢реАрдирд╡рд░ рд╕рд▓рдЧ рдЕрдиреЗрдХ рд╡реЗрд│рд╛ рдЪрд╛рд▓рд╡рд▓реНрдпрд╛ рдЧреЗрд▓реЗрд▓реНрдпрд╛ рдЪрд╛рдЪрдгреНрдпрд╛ рдХрдзреАрдХрдзреА CI рдордзреНрдпреЗ рдХреНрд░реЕрд╢ рд╣реЛрддрд╛рдд.

рдСрдЯреЛрдЯреЗрд╕реНрдЯ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг:

<plugins>
	
<plugin>
    	
<groupId>org.apache.maven.plugins</groupId>
    	
<artifactId>maven-surefire-plugin</artifactId>
    	
<version>2.20</version>
    	
<configuration>
        	
<skipTests>${skipTests}</skipTests>
        	
<testFailureIgnore>false</testFailureIgnore>
        	
<argLine>
            	
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
            	
-Dcucumber.options="--tags ${TAGS} --plugin io.qameta.allure.cucumber2jvm.AllureCucumber2Jvm --plugin pretty"
        	
</argLine>
    	
</configuration>
	
    <dependencies>
        	
<dependency>
            	
<groupId>org.aspectj</groupId>
            	
<artifactId>aspectjweaver</artifactId>
            	
<version>${aspectj.version}</version>
        	
</dependency>
    	
</dependencies>
	
</plugin>
	
<plugin>
    	
<groupId>io.qameta.allure</groupId>
    	
<artifactId>allure-maven</artifactId>
    	
<version>2.9</version>
	
</plugin>
</plugins>

 рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡
рдЕрд▓реНрдпреБрдЕрд░ рд░рд┐рдкреЛрд░реНрдЯрдЪреЗ рдЙрджрд╛рд╣рд░рдг

 рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡
рдЪрд╛рдЪрдгреНрдпрд╛рдВрджрд░рдореНрдпрд╛рди рд░рдирд░ рд▓реЛрдб (8 рдХреЛрд░, 8 рдЬреАрдмреА рд░реЕрдо, 1 рдереНрд░реЗрдб)
 
рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдбреЗрдб рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреЗ рдлрд╛рдпрджреЗ:

  • рд╕реЗрдЯ рдЕрдк рдЖрдгрд┐ рдЪрд╛рд▓рд╡рдгреЗ рд╕реЛрдкреЗ;
  • рд╕реАрдЖрдп рдордзреАрд▓ рдкреНрд░рдХреНрд╖реЗрдкрдг рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрджреГрд╖реНрдЯреНрдпрд╛ рд╕реНрдерд╛рдирд┐рдХ рдкреНрд░рдХреНрд╖реЗрдкрдгрд╛рдВрдкреЗрдХреНрд╖рд╛ рднрд┐рдиреНрди рдирд╛рд╣реАрдд;
  • рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪрд╛ рдПрдХрдореЗрдХрд╛рдВрд╡рд░ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдд рдирд╛рд╣реА;
  • рдзрд╛рд╡рдкрдЯреВ рд╕рдВрд╕рд╛рдзрдирд╛рдВрд╕рд╛рдареА рдХрд┐рдорд╛рди рдЖрд╡рд╢реНрдпрдХрддрд╛.

рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдбреЗрдб рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреЗ рддреЛрдЯреЗ:

  • рдкреВрд░реНрдг рд╣реЛрдгреНрдпрд╛рд╕рд╛рдареА рдЦреВрдк рд╡реЗрд│ рд▓рд╛рдЧрддреЛ;
  • рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреЗ рджреАрд░реНрдШ рд╕реНрдерд┐рд░реАрдХрд░рдг;
  • рдзрд╛рд╡рдкрдЯреВ рд╕рдВрд╕рд╛рдзрдирд╛рдВрдЪрд╛ рдЕрдХрд╛рд░реНрдпрдХреНрд╖рдо рд╡рд╛рдкрд░, рдЕрддреНрдпрдВрдд рдХрдореА рд╡рд╛рдкрд░.

JVM рдХрд╛рдЯреНрдпрд╛рдВрд╡рд░ рдЪрд╛рдЪрдгреНрдпрд╛

рдмреЗрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдЕрдВрдорд▓рд╛рдд рдЖрдгрддрд╛рдирд╛ рдЖрдореНрд╣реА рдереНрд░реЗрдб-рд╕реЗрдл рдХреЛрдбрдЪреА рдХрд╛рд│рдЬреА рдШреЗрддрд▓реА рдирд╕рд▓реНрдпрд╛рдореБрд│реЗ, рд╕рдорд╛рдВрддрд░ рдЪрд╛рд▓рдгреНрдпрд╛рдЪрд╛ рд╕рд░реНрд╡рд╛рдд рд╕реНрдкрд╖реНрдЯ рдорд╛рд░реНрдЧ рд╣реЛрддрд╛ cucumber-jvm-рд╕рдорд╛рдВрддрд░-рдкреНрд▓рдЧрдЗрди рдорд╛рд╡реЗрди рд╕рд╛рдареА. рдкреНрд▓рдЧрдЗрди рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреЗ рд╕реЛрдкреЗ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдпреЛрдЧреНрдп рд╕рдорд╛рдВрддрд░ рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА, рд╕реНрд╡рддрдВрддреНрд░ рдмреНрд░рд╛рдЙрдЭрд░рдордзреНрдпреЗ рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рдЪрд╛рд▓рд╡рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдХрд░рдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдХрд╛рд╣реА рдирд╛рд╣реА, рдорд▓рд╛ рд╕реЗрд▓реЗрдиреЛрдЗрдб рд╡рд╛рдкрд░рд╛рд╡реЗ рд▓рд╛рдЧрд▓реЗ.

рд╕реЗрд▓реЗрдиреЛрдЗрдб рд╕рд░реНрд╡реНрд╣рд░ 32 рдХреЛрд░ рдЖрдгрд┐ 24 GB RAM рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдорд╢реАрдирд╡рд░ рд▓реЙрдиреНрдЪ рдХрд░рдгреНрдпрд╛рдд рдЖрд▓рд╛. рдорд░реНрдпрд╛рджрд╛ 48 рдмреНрд░рд╛рдЙрдЭрд░рд╡рд░ рд╕реЗрдЯ рдХреЗрд▓реА рдЧреЗрд▓реА - 1,5 рдереНрд░реЗрдб рдкреНрд░рддрд┐ рдХреЛрд░ рдЖрдгрд┐ рд╕реБрдорд╛рд░реЗ 400 MB RAM. рдкрд░рд┐рдгрд╛рдореА, рдЪрд╛рдЪрдгреАрдЪреА рд╡реЗрд│ рддреАрди рддрд╛рд╕рд╛рдВрд╡рд░реВрди 40 рдорд┐рдирд┐рдЯрд╛рдВрдкрд░реНрдпрдВрдд рдХрдореА рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реА. рдзрд╛рд╡рд╛рдВрдЪрд╛ рд╡реЗрдЧ рд╡рд╛рдврд╡рд▓реНрдпрд╛рдиреЗ рд╕реНрдерд┐рд░реАрдХрд░рдг рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рдгреНрдпрд╛рд╕ рдорджрдд рдЭрд╛рд▓реА: рдЖрддрд╛ рдЖрдореНрд╣реА 20-30 рд╡реЗрд│рд╛ рдирд╡реАрди рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рддреНрд╡рд░реАрдд рдЪрд╛рд▓рд╡реВ рд╢рдХрддреЛ рдЬреЛрдкрд░реНрдпрдВрдд рдЖрдореНрд╣рд╛рд▓рд╛ рдЦрд╛рддреНрд░реА рд╣реЛрдд рдирд╛рд╣реА рдХреА рддреЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрд░рд┐рддреНрдпрд╛ рдзрд╛рд╡рддреАрд▓.
рд╕реЛрд▓реНрдпреВрд╢рдирдЪреА рдкрд╣рд┐рд▓реА рдХрдорддрд░рддрд╛ рдореНрд╣рдгрдЬреЗ рдХрдореА рд╕рдВрдЦреНрдпреЗрдиреЗ рд╕рдорд╛рдВрддрд░ рдереНрд░реЗрдбрд╕рд╣ рдзрд╛рд╡рдХ рд╕рдВрд╕рд╛рдзрдирд╛рдВрдЪрд╛ рдЙрдЪреНрдЪ рд╡рд╛рдкрд░: 4 рдХреЛрд░ рдЖрдгрд┐ 8 рдЬреАрдмреА рд░реЕрдорд╡рд░, рдЪрд╛рдЪрдгреНрдпрд╛ 6 рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдереНрд░реЗрдбреНрд╕рдордзреНрдпреЗ рд╕реНрдерд┐рд░рдкрдгреЗ рдЪрд╛рд▓рд▓реНрдпрд╛. рджреБрд╕рд░рд╛ рдЧреИрд░рд╕реЛрдп: рдкреНрд▓рдЧрдЗрди рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╕реНрдерд┐рддреАрд╕рд╛рдареА рдзрд╛рд╡рдкрдЯреВ рд╡рд░реНрдЧ рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рддреЗ, рддреНрдпрд╛рдкреИрдХреА рдХрд┐рддреАрд╣реА рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рддрд░реАрд╣реА.

рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ! рдЯреЕрдЧрд╕рд╣ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдкрд╛рд╕ рдХрд░реВ рдирдХрд╛ argLine, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдпрд╛рд╕рд╛рд░рдЦреЗ:

<argLine>-Dcucumber.options="--tags ${TAGS} --plugin io.qameta.allure.cucumber2jvm.AllureCucumber2Jvm --plugin pretty"</argLine>
тАж
Mvn тАУDTAGS="@smoke"

рддреБрдореНрд╣реА рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ рдЯреЕрдЧ рдкрд╛рд╕ рдХреЗрд▓реНрдпрд╛рд╕, рдкреНрд▓рдЧрдЗрди рд╕рд░реНрд╡ рдЪрд╛рдЪрдгреНрдпрд╛рдВрд╕рд╛рдареА рдзрд╛рд╡рдкрдЯреВ рддрдпрд╛рд░ рдХрд░реЗрд▓, рдореНрд╣рдгрдЬреЗрдЪ рддреЗ рд╕рд░реНрд╡ рдЪрд╛рдЪрдгреНрдпрд╛ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реЗрд▓, рд▓рд╛рдБрдЪ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рд▓рдЧреЗрдЪ рддреНрдпрд╛ рд╡рдЧрд│реВрди рдЕрдиреЗрдХ JVM рдлреЙрд░реНрдХреНрд╕ рддрдпрд╛рд░ рдХрд░реЗрд▓.

рдЯреЕрдЧрд╕рд╣ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдЯрд╛рдХрдгреЗ рдпреЛрдЧреНрдп рдЖрд╣реЗ рдЯреЕрдЧ рдкреНрд▓рдЧрдЗрди рд╕реЗрдЯрд┐рдВрдЧреНрдЬрдордзреНрдпреЗ, рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдг рдкрд╣рд╛. рдЖрдореНрд╣реА рдЪрд╛рдЪрдгреА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЗрддрд░ рдкрджреНрдзрддреАрдВрдордзреНрдпреЗ Allure рдкреНрд▓рдЧрдЗрди рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рдд рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗрдд.

рдЪреБрдХреАрдЪреНрдпрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрдЬрд╕рд╣ 6 рд▓рд╣рд╛рди рдЪрд╛рдЪрдгреНрдпрд╛рдВрд╕рд╛рдареА рдзрд╛рд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрд│реЗрдЪреЗ рдЙрджрд╛рд╣рд░рдг:

[INFO] Total time: 03:17 min

рддреБрдореНрд╣реА рдереЗрдЯ рдЯреЕрдЧ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реНрдпрд╛рд╕ рдЪрд╛рдЪрдгреА рд░рди рдЯрд╛рдЗрдордЪреЗ рдЙрджрд╛рд╣рд░рдг mvn... -Dcucumber.options:

[INFO] Total time: 44.467 s

рдСрдЯреЛрдЯреЗрд╕реНрдЯ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг:

<profiles>
	
<profile>
    	
<id>parallel</id>
    	
<build>
        	
<plugins>
            	
<plugin>
                	
<groupId>com.github.temyers</groupId>
                	
<artifactId>cucumber-jvm-parallel-plugin</artifactId>
                	
<version>5.0.0</version>
                	
<executions>
                    	
<execution>
                        	
<id>generateRunners</id>
                        	
<phase>generate-test-sources</phase>
                        	
<goals>
                            	
<goal>generateRunners</goal>
                        	
</goals>
                        	
<configuration>
                	
            <tags>
                            	
<tag>${TAGS}</tag>
                            	
</tags>
                            	
<glue>
                                	
<package>stepdefs</package>
                            	
</glue>
                        	
</configuration>
     	
               </execution>
                	
</executions>
    	
        </plugin>
            	
<plugin>
                	
<groupId>org.apache.maven.plugins</groupId>
                	
<artifactId>maven-surefire-plugin</artifactId>
        	
        <version>2.21.0</version>
                	
<configuration>
                    	
<forkCount>12</forkCount>
                    	
<reuseForks>false</reuseForks>
                    	
<includes>**/*IT.class</includes>
                   	
 <testFailureIgnore>false</testFailureIgnore>
                    	
<!--suppress UnresolvedMavenProperty -->
                    	
<argLine>
  	
 -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar" -Dcucumber.options="--plugin io.qameta.allure.cucumber2jvm.AllureCucumber2Jvm TagPFAllureReporter --plugin pretty"
                    	
</argLine>
                	
</configuration>
                	
<dependencies>
                    	
<dependency>
                        	
<groupId>org.aspectj</groupId>
                        	
<artifactId>aspectjweaver</artifactId>
                        	
<version>${aspectj.version}</version>
                 	
   </dependency>
                	
</dependencies>
         	
   </plugin>
        	
</plugins>
    	
</build>
	
</profile>

рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡
рдЕреЕрд▓реНрдпреБрдЕрд░ рд░рд┐рдкреЛрд░реНрдЯрдЪреЗ рдЙрджрд╛рд╣рд░рдг (рд╕рд░реНрд╡рд╛рдд рдЕрд╕реНрдерд┐рд░ рдЪрд╛рдЪрдгреА, 4 рд░рди)

рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡рдЪрд╛рдЪрдгреНрдпрд╛рдВрджрд░рдореНрдпрд╛рди рд░рдирд░ рд▓реЛрдб (8 рдХреЛрд░, 8 рдЬреАрдмреА рд░реЕрдо, 12 рдереНрд░реЗрдб)
 
рд╕рд╛рдзрдХ:

  • рд╕реЛрдкреЗ рд╕реЗрдЯрдЕрдк - рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдлрдХреНрдд рдПрдХ рдкреНрд▓рдЧрдЗрди рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ;
  • рдПрдХрд╛рдЪ рд╡реЗрд│реА рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рдЪрд╛рдЪрдгреНрдпрд╛ рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛;
  • рдЪрд╛рдЪрдгреА рд╕реНрдерд┐рд░реАрдХрд░рдгрд╛рдЪрд╛ рдкреНрд░рд╡реЗрдЧ рдЪрд░рдг 1 рдзрдиреНрдпрд╡рд╛рдж. 

рдмрд╛рдзрдХ

  • рдПрдХрд╛рдзрд┐рдХ OS/рдХрдВрдЯреЗрдирд░ рдЖрд╡рд╢реНрдпрдХ;
  • рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рдЯреНрдпрд╛рд╕рд╛рдареА рдЙрдЪреНрдЪ рд╕рдВрд╕рд╛рдзрдирд╛рдВрдЪрд╛ рд╡рд╛рдкрд░;
  • рдкреНрд▓рдЧрдЗрди рдЬреБрдиреЗ рдЖрд╣реЗ рдЖрдгрд┐ рдпрд╛рдкреБрдвреЗ рд╕рдорд░реНрдерд┐рдд рдирд╛рд╣реА. 

рдЕрд╕реНрдерд┐рд░рддреЗрд╡рд░ рдорд╛рдд рдХрд╢реА рдХрд░рд╛рд╡реА 

рдЪрд╛рдЪрдгреА рдмреЗрдВрдЪ рдЖрджрд░реНрд╢ рдирд╕рддрд╛рдд, рдЬрд╕реЗ рд╕реНрд╡рдд: рдЪрд╛рдЪрдгреА рдХрд░рддрд╛рдд. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЕрдиреЗрдХ рдлреНрд▓реЕрдХреА рдЪрд╛рдЪрдгреНрдпрд╛ рдЖрд╣реЗрдд рд╣реЗ рдЖрд╢реНрдЪрд░реНрдпрдХрд╛рд░рдХ рдирд╛рд╣реА. рдмрдЪрд╛рд╡рд╛рд╕рд╛рдареА рдЖрд▓реЗ maven рдЦрд╛рддреНрд░реАрдлрд╛рдпрд░ рдкреНрд▓рдЧрдЗрди, рдЬреЗ рдЕрдпрд╢рд╕реНрд╡реА рдЪрд╛рдЪрдгреНрдпрд╛ рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рдгреНрдпрд╛рд╕ рд╕рдорд░реНрдерди рджреЗрддреЗ. рддреБрдореНрд╣рд╛рд▓рд╛ рдкреНрд▓рдЧрдЗрди рдЖрд╡реГрддреНрддреА рдХрд┐рдорд╛рди 2.21 рд╡рд░ рдЕрдкрдбреЗрдЯ рдХрд░рд╛рдпрдЪреА рдЖрд╣реЗ рдЖрдгрд┐ pom рдлрд╛рдЗрд▓рдордзреНрдпреЗ рд░реАрд╕реНрдЯрд╛рд░реНрдЯрдЪреНрдпрд╛ рд╕рдВрдЦреНрдпреЗрд╕рд╣ рдПрдХ рдУрд│ рд▓рд┐рд╣рд╛ рдХрд┐рдВрд╡рд╛ рдорд╛рд╡реЗрдирд▓рд╛ рдпреБрдХреНрддрд┐рд╡рд╛рдж рдореНрд╣рдгреВрди рдкрд╛рд╕ рдХрд░рд╛.

рдСрдЯреЛрдЯреЗрд╕реНрдЯ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг:

   	
<plugin>
        	
<groupId>org.apache.maven.plugins</groupId>
  	
      <artifactId>maven-surefire-plugin</artifactId>
        	
<version>2.21.0</version>
        	
<configuration>
           	
тАж.
            	
<rerunFailingTestsCount>2</rerunFailingTestsCount>
            	
тАж.
            	
</configuration>
</plugin>

рдХрд┐рдВрд╡рд╛ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрд╡рд░: mvn тАж -Dsurefire.rerunFailingTestsCount=2 тАж
рдПрдХ рдкрд░реНрдпрд╛рдп рдореНрд╣рдгреВрди, рдкреЙрд╡рд░рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ (PS1) рд╕рд╛рдареА Maven рдкрд░реНрдпрд╛рдп рд╕реЗрдЯ рдХрд░рд╛:

  
Set-Item Env:MAVEN_OPTS "-Dfile.encoding=UTF-8 -Dsurefire.rerunFailingTestsCount=2"

рд╕рд╛рдзрдХ:

  • рдЬреЗрд╡реНрд╣рд╛ рддреА рдХреНрд░реЕрд╢ рд╣реЛрддреЗ рддреЗрд╡реНрд╣рд╛ рдЕрд╕реНрдерд┐рд░ рдЪрд╛рдЪрдгреАрдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдгреНрдпрд╛рдд рд╡реЗрд│ рд╡рд╛рдпрд╛ рдШрд╛рд▓рд╡рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА;
  • рдЪрд╛рдЪрдгреА рдЦрдВрдбрдкреАрдард╛рдЪреНрдпрд╛ рд╕реНрдерд┐рд░рддреЗрдЪреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдХрдореА рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдК рд╢рдХрддрд╛рдд.

рдмрд╛рдзрдХ

  • рдлреНрд▓реЛрдЯрд┐рдВрдЧ рджреЛрд╖ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд;
  • рдзрд╛рд╡рдгреНрдпрд╛рдЪреА рд╡реЗрд│ рд╡рд╛рдврддреЗ.

рдХрд╛рдХрдбреА 4 рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╣ рд╕рдорд╛рдВрддрд░ рдЪрд╛рдЪрдгреНрдпрд╛

рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреА рд╕рдВрдЦреНрдпрд╛ рджрд┐рд╡рд╕реЗрдВрджрд┐рд╡рд╕ рд╡рд╛рдврдд рдЧреЗрд▓реА. рдЖрдореНрд╣реА рдкреБрдиреНрд╣рд╛ рдзрд╛рд╡рд╛рдВрдЪрд╛ рд╡реЗрдЧ рд╡рд╛рдврд╡рдгреНрдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗрд▓рд╛. рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдорд▓рд╛ рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрд╕реЗрдВрдмрд▓реА рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдордзреНрдпреЗ рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рдЪрд╛рдЪрдгреНрдпрд╛ рд╕рдорд╛рдХрд▓рд┐рдд рдХрд░рд╛рдпрдЪреНрдпрд╛ рд╣реЛрддреНрдпрд╛. рдорд╛рд╡реЗрди рдкреНрд▓рдЧрдЗрди рд╡рд╛рдкрд░реВрди рд╕рдорд╛рдВрддрд░ рдзрд╛рд╡рддрд╛рдирд╛ рдзрд╛рд╡рдкрдЯреВрдВрдЪреНрдпрд╛ рдкрд┐рдвреАрд▓рд╛ рдЦреВрдк рд╡реЗрд│ рд▓рд╛рдЧрд▓рд╛ рд╣рд╛ рдорд╣рддреНрддреНрд╡рд╛рдЪрд╛ рдШрдЯрдХ рд╣реЛрддрд╛.

рддреНрдпрд╛ рд╡реЗрд│реА, рдХрд╛рдХрдбреА 4 рдЖрдзреАрдЪ рдкреНрд░рд╕рд┐рджреНрдз рдЭрд╛рд▓реА рд╣реЛрддреА, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдпрд╛ рдЖрд╡реГрддреНрддреАрд╕рд╛рдареА рдХрд░реНрдирд▓ рдкреБрдиреНрд╣рд╛ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛. рд░рд┐рд▓реАрдЭ рдиреЛрдЯреНрд╕рдордзреНрдпреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рдереНрд░реЗрдб рд╕реНрддрд░рд╛рд╡рд░ рд╕рдорд╛рдВрддрд░ рд▓рд╛рдБрдЪ рдХрд░рдгреНрдпрд╛рдЪреЗ рд╡рдЪрди рджрд┐рд▓реЗ рд╣реЛрддреЗ. рд╕реИрджреНрдзрд╛рдВрддрд┐рдХрджреГрд╖реНрдЯреНрдпрд╛ рд╣реЗ рдЕрд╕рд╛рд╡реЗ:

  • рдереНрд░реЗрдбреНрд╕рдЪреА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рдврд╡реВрди рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рд╕ рд▓рдХреНрд╖рдгреАрдп рдЧрддреА рджреНрдпрд╛;
  • рдкреНрд░рддреНрдпреЗрдХ рдСрдЯреЛрдЯреЗрд╕реНрдЯрд╕рд╛рдареА рдзрд╛рд╡рдкрдЯреВ рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛ рд╣реЛрдгрд╛рд░рд╛ рд╡реЗрд│ рдХрдореА рдХрд░рд╛.

рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕рд╕рд╛рдареА рдлреНрд░реЗрдорд╡рд░реНрдХ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХрд░рдгреЗ рдЗрддрдХреЗ рдЕрд╡рдШрдб рдирд╡реНрд╣рддреЗ. рдХрд╛рдХрдбреА 4 рдкреНрд░рддреНрдпреЗрдХ рд╡реИрдпрдХреНрддрд┐рдХ рдЪрд╛рдЪрдгреА рдПрдХрд╛ рд╕рдорд░реНрдкрд┐рдд рдереНрд░реЗрдбрд╡рд░ рд╕реБрд░реБрд╡рд╛рддреАрдкрд╛рд╕реВрди рд╢реЗрд╡рдЯрдкрд░реНрдпрдВрдд рдЪрд╛рд▓рд╡рддреЗ, рдореНрд╣рдгреВрди рдХрд╛рд╣реА рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рд░ рдЧреЛрд╖реНрдЯреА рдлрдХреНрдд ThreadLocal рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛. 
рдЖрдпрдбрд┐рдпрд╛ рд░рд┐рдлреЕрдХреНрдЯрд░рд┐рдВрдЧ рдЯреВрд▓реНрд╕ рд╡рд╛рдкрд░реВрди рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛рдирд╛ рдореБрдЦреНрдп рдЧреЛрд╖реНрдЯ рдореНрд╣рдгрдЬреЗ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓рдЪреА рддреБрд▓рдирд╛ рдХреБрдареЗ рдХреЗрд▓реА рдЧреЗрд▓реА рддреЗ рддрдкрд╛рд╕рдгреЗ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╢реВрдиреНрдп рддрдкрд╛рд╕рдгреЗ). рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рддреБрдореНрд╣рд╛рд▓рд╛ рдЬреНрдпреБрдирд┐рдЯ рд░рдирд░ рдХреНрд▓рд╛рд╕ рдПрдиреЛрдЯреЗрд╢рдирдордзреНрдпреЗ рдЕреЕрд▓реНрдпреБрдЕрд░ рдкреНрд▓рдЧрдЗрди рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ.

рдСрдЯреЛрдЯреЗрд╕реНрдЯ рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг:

 
<profile>
	
<id>parallel</id>
	
<build>
    	
<plugins>
        	
<plugin>
            	
<groupId>org.apache.maven.plugins</groupId>
 	
           <artifactId>maven-surefire-plugin</artifactId>
            	
<version>3.0.0-M3</version>
   	
         <configuration>
                	
<useFile>false</useFile>
                	
<testFailureIgnore>false</testFailureIgnore>
        	
        <parallel>methods</parallel>
                	
<threadCount>6</threadCount>
                	
<perCoreThreadCount>true</perCoreThreadCount>
                	
<argLine>
                    	
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                	
</argLine>
            	
</configuration>
            	
<dependencies>
                	
<dependency>
                    	
<groupId>org.aspectj</groupId>
   	
                 <artifactId>aspectjweaver</artifactId>
                    	
<version>${aspectj.version}</version>
                	
</dependency>
            	
</dependencies>
        	
</plugin>
    	
</plugins>
	
</build>
</profile>

рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡рдЕреЕрд▓реНрдпреБрдЕрд░ рд░рд┐рдкреЛрд░реНрдЯрдЪреЗ рдЙрджрд╛рд╣рд░рдг (рд╕рд░реНрд╡рд╛рдд рдЕрд╕реНрдерд┐рд░ рдЪрд╛рдЪрдгреА, 5 рд░рди)

рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА, рд╕реНрдХреЗрд▓: VTB рд╡рд░ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдЕрдиреБрднрд╡рдЪрд╛рдЪрдгреНрдпрд╛рдВрджрд░рдореНрдпрд╛рди рд░рдирд░ рд▓реЛрдб (8 рдХреЛрд░, 8 рдЬреАрдмреА рд░реЕрдо, 24 рдереНрд░реЗрдб)

рд╕рд╛рдзрдХ:

  • рдХрдореА рд╕рдВрд╕рд╛рдзрдирд╛рдВрдЪрд╛ рд╡рд╛рдкрд░;
  • рдХрд╛рдХрдбреАрдЪреЗ рдореВрд│ рд╕рдорд░реНрдерди - рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдзрдирд╛рдВрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА;
  • рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░рд╡рд░ 6 рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдереНрд░реЗрдб рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛.

рдмрд╛рдзрдХ

  • рдХреЛрдб рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдПрдХреНрдЭрд┐рдХреНрдпреВрд╢рдирд▓рд╛ рд╕рдкреЛрд░реНрдЯ рдХрд░рддреЛ рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ;
  • рдкреНрд░рд╡реЗрд╢ рдереНрд░реЗрд╢реЛрд▓реНрдб рд╡рд╛рдврддреЗ.

GitLab рдкреГрд╖реНрдард╛рдВрд╡рд░ рдореЛрд╣рдХ рдЕрд╣рд╡рд╛рд▓

рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдПрдХреНрдЭрд┐рдХреНрдпреВрд╢рди рд╕рд╛рджрд░ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдореНрд╣реА рдЕрд╣рд╡рд╛рд▓рд╛рдВрдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдгреНрдпрд╛рдд рдЬрд╛рд╕реНрдд рд╡реЗрд│ рдШрд╛рд▓рд╡реВ рд▓рд╛рдЧрд▓реЛ. рддреНрдпрд╛ рд╡реЗрд│реА, рдЖрдореНрд╣рд╛рд▓рд╛ рдкреНрд░рддреНрдпреЗрдХ рдЕрд╣рд╡рд╛рд▓ рдЧрд┐рдЯрд▓реЕрдмрд╡рд░ рдЖрд░реНрдЯрд┐рдлреЕрдХреНрдЯ рдореНрд╣рдгреВрди рдЕрдкрд▓реЛрдб рдХрд░рд╛рдпрдЪрд╛ рд╣реЛрддрд╛, рдирдВрддрд░ рддреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реВрди рдЕрдирдкреЕрдХ рдХрд░рд╛рдпрдЪрд╛ рд╣реЛрддрд╛. рд╣реЗ рдлрд╛рд░ рд╕реЛрдпреАрдЪреЗ рдирд╛рд╣реА рдЖрдгрд┐ рдмрд░рд╛рдЪ рд╡реЗрд│ рд▓рд╛рдЧрддреЛ. рдЖрдгрд┐ рдЬрд░ рдПрдЦрд╛рджреНрдпрд╛рд▓рд╛ рд╕реНрд╡рддрдГрд╕рд╛рдареА рдЕрд╣рд╡рд╛рд▓ рдкрд╣рд╛рдпрдЪрд╛ рдЕрд╕реЗрд▓, рддрд░ рддреНрдпрд╛рдВрдирд╛ рддреЗрдЪ рдСрдкрд░реЗрд╢рдиреНрд╕ рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧрддреАрд▓. рдЖрдореНрд╣рд╛рд▓рд╛ рдЬрд▓рдж рдЕрднрд┐рдкреНрд░рд╛рдп рдкреНрд░рд╛рдкреНрдд рдХрд░рд╛рдпрдЪрд╛ рд╣реЛрддрд╛ рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рдПрдХ рдЙрдкрд╛рдп рд╕рд╛рдкрдбрд▓рд╛ - GitLab рдкреГрд╖реНрдареЗ. рд╣реЗ рдЕрдВрдЧрднреВрдд рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдЖрд╣реЗ рдЬреЗ GitLab рдЪреНрдпрд╛ рд╕рд░реНрд╡ рдЕрд▓реАрдХрдбреАрд▓ рдЖрд╡реГрддреНрддреНрдпрд╛рдВрдордзреНрдпреЗ рдмреЙрдХреНрд╕рдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ. рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪреНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд╕реНрдерд┐рд░ рд╕рд╛рдЗрдЯреНрд╕ рдЙрдкрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЖрдгрд┐ рдереЗрдЯ рд▓рд┐рдВрдХрджреНрд╡рд╛рд░реЗ рддреНрдпрд╛рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ.

Allure рдЕрд╣рд╡рд╛рд▓рд╛рдВрдЪреЗ рд╕рд░реНрд╡ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ GitLab рдкреГрд╖реНрдард╛рдВрд╡рд░ рдШреЗрддрд▓реЗ рдЧреЗрд▓реЗ. GitLab рдкреГрд╖реНрдард╛рдВрд╡рд░ рдЕрд╣рд╡рд╛рд▓ рддреИрдирд╛рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдХреНрд░рд┐рдкреНрдЯ - Windows PowerShell рдордзреНрдпреЗ (рдпрд╛рдкреВрд░реНрд╡реА рддреБрдореНрд╣рд╛рд▓рд╛ рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рдЪрд╛рд▓рд╡рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ):

New-Item -ItemType directory -Path $testresulthistory | Out-Null

try {Invoke-WebRequest -Uri $hst -OutFile $outputhst}
Catch{echo "fail copy history"}
try {Invoke-WebRequest -Uri $hsttrend -OutFile $outputhsttrnd}
Catch{echo "fail copy history trend"}

mvn allure:report
#mvn assembly:single -PzipAllureReport
xcopy $buildlocationtargetsiteallure-maven-plugin* $buildlocationpublic /s /i /Y

рдкрд░рд┐рдгрд╛рдо рдХрд╛рдп рдЖрд╣реЗ 

рддрд░, рдЬрд░ рддреБрдореНрд╣реА рдХрд╛рдХрдбреА рдСрдЯреЛрдЯреЗрд╕реНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХрдордзреНрдпреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдереНрд░реЗрдб рд╕реЗрдл рдХреЛрдбрдЪреА рдЧрд░рдЬ рдЖрд╣реЗ рдХрд╛ рдпрд╛рдЪрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░рдд рдЕрд╕рд╛рд▓, рддрд░ рдЖрддрд╛ рдЙрддреНрддрд░ рд╕реНрдкрд╖реНрдЯ рдЖрд╣реЗ - рдХрд╛рдХрдбреА 4 рд╕рд╣ рддреЗ рдЕрдВрдорд▓рд╛рдд рдЖрдгрдгреЗ рд╕реЛрдкреЗ рдЖрд╣реЗ, рдЬреНрдпрд╛рдореБрд│реЗ рдПрдХрд╛рдЪ рд╡реЗрд│реА рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдереНрд░реЗрдбреНрд╕рдЪреА рд╕рдВрдЦреНрдпрд╛ рд▓рдХреНрд╖рдгреАрдп рд╡рд╛рдврддреЗ. рдЪрд╛рдЪрдгреНрдпрд╛ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рдпрд╛ рдкрджреНрдзрддреАрд╕рд╣, рдкреНрд░рд╢реНрди рдЖрддрд╛ рд╕реЗрд▓реЗрдиреЛрдЗрдб рдЖрдгрд┐ рдЪрд╛рдЪрдгреА рдЦрдВрдбрдкреАрдард╛рд╕рд╣ рдорд╢реАрдирдЪреНрдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдмрджреНрджрд▓ рдмрдирддреЛ.

рд╕рд░рд╛рд╡рд╛рдиреЗ рджрд░реНрд╢рд╡рд┐рд▓реЗ рдЖрд╣реЗ рдХреА рдереНрд░реЗрдбреНрд╕рд╡рд░ рдСрдЯреЛрдЯреЗрд╕реНрдЯреНрд╕ рдЪрд╛рд▓рд╡рд▓реНрдпрд╛рдиреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд░реНрд╡реЛрддреНрддрдо рдХрд╛рдордЧрд┐рд░реАрд╕рд╣ рд╕рдВрд╕рд╛рдзрдирд╛рдЪрд╛ рд╡рд╛рдкрд░ рдХрдореАрддрдХрдореА рдХрдореА рдХрд░рддрд╛ рдпреЗрддреЛ. рдЖрд▓реЗрдЦрд╛рдВрд╡рд░реВрди рдкрд╛рд╣рд┐рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ, рдереНрд░реЗрдбреНрд╕ рджреБрдкреНрдкрдЯ рдХреЗрд▓реНрдпрд╛рдиреЗ рдХрд╛рдордЧрд┐рд░реА рдЪрд╛рдЪрдгреНрдпрд╛рдВрдордзреНрдпреЗ рд╕рдорд╛рди рдкреНрд░рд╡реЗрдЧ рд╣реЛрдд рдирд╛рд╣реА. рддрдерд╛рдкрд┐, рдЖрдореНрд╣реА ре▓рдкреНрд▓рд┐рдХреЗрд╢рди рдмрд┐рд▓реНрдбрдордзреНрдпреЗ 2 рд╣реВрди рдЕрдзрд┐рдХ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛ рдЬреЛрдбрдгреНрдпрд╛рдд рд╕рдХреНрд╖рдо рд╣реЛрддреЛ, рдЬреЗ 200 рд░рди рдХрд░реВрдирд╣реА рд╕реБрдорд╛рд░реЗ 5 рдорд┐рдирд┐рдЯрд╛рдВрдд рдЪрд╛рд▓рддрд╛рдд. рд╣реЗ рддреБрдореНрд╣рд╛рд▓рд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреВрди рджреНрд░реБрдд рдЕрднрд┐рдкреНрд░рд╛рдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ рдЖрдгрд┐ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рдмрджрд▓ рдХрд░рд╛ рдЖрдгрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреБрдиреНрд╣рд╛ рдХрд░рд╛.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛