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

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

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

рд╣рд╛рдореАрд▓реЗ рдХрд╣рд╛рдБ рд╕реБрд░реБ рдЧрд░реНрдпреМрдВ?

рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрди рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рдПрдХреАрдХреГрдд рдЧрд░реНрди, рд╣рд╛рдореАрд▓рд╛рдИ рд╣рд╛рдореНрд░реЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рдЕрдиреБрд░реВрдк рд▓рдЪрд┐рд▓реЛ рд░реВрдкрдорд╛ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХрд┐рдиреЗ рд╕реНрд╡рдЪрд╛рд▓рди рдврд╛рдБрдЪрд╛ рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛред рдЖрджрд░реНрд╢ рд░реВрдкрдорд╛, рдо рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдг рдЗрдиреНрдЬрд┐рдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдХрд▓ рдорд╛рдирдХ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдереЗрдВ, рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдЗрдореНрдмреЗрдб рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдХреВрд▓рд┐рддред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореАрд▓реЗ рдирд┐рдореНрди рдкреНрд░рд╡рд┐рдзрд┐рд╣рд░реВ рдЫрдиреМрдЯ рдЧрд░реЗрдХрд╛ рдЫреМрдВ:

  • рдЬрд╛рднрд╛,
  • рдорд╛рд╡реЗрди,
  • рд╕реЗрд▓реЗрдирд┐рдпрдо,
  • рдХрд╛рдХрдбреА + JUNIT 4,
  • рд▓реЛрдн,
  • GitLab

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

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

рдПрдХрд▓ рдереНрд░реЗрдбреЗрдб рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ

рдЪрдХреНрд░рд▓рд╛рдИ рдкреБрди: рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдирдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореАрд▓реЗ GitHub рдорд╛ рд╡рд┐рднрд┐рдиреНрди рднрдгреНрдбрд╛рд░рд╣рд░реВрдмрд╛рдЯ рдврд╛рдБрдЪрд╛рдХреЛ рдЖрдзрд╛рд░рдХреЛ рд░реВрдкрдорд╛ рд╡рд┐рдХрд╛рд╕рд╣рд░реВ рд▓рд┐рдпреМрдВ рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдЖрдлреНрдиреИ рд▓рд╛рдЧрд┐ рдЕрдиреБрдХреВрд▓рд┐рдд рдЧрд░реНрдпреМрдВред рд╣рд╛рдореАрд▓реЗ рдореБрдЦреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдЯреЛрдЯреЗрд╕реНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХрдХреЛ рдХреЛрд░ рд░ рд╣рд╛рдореНрд░реЛ рдХреЛрд░рдорд╛ рдЕрдЯреЛрдЯреЗрд╕реНрдЯрд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ рд╕реБрдиреМрд▓реЛ рдЙрджрд╛рд╣рд░рдгрд╕рд╣рд┐рддрдХреЛ рднрдгреНрдбрд╛рд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдпреМрдВред рдкреНрд░рддреНрдпреЗрдХ рдЯреЛрд▓реАрд▓реЗ рд╕реБрдирдХреЛ рдЫрд╡рд┐ рд▓рд┐рдиреБрдкрд░реНрдереНрдпреЛ рд░ рддреНрдпрд╕рдорд╛ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрдиреБрдкрд░реНтАНрдпреЛ, рдпрд╕рд▓рд╛рдИ рддрд┐рдиреАрд╣рд░реВрдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдЕрдиреБрдХреВрд▓рди рдЧрд░реНрджреИред рд╣рд╛рдореАрд▓реЗ рдпрд╕рд▓рд╛рдИ GitLab-CI рдмреИрдВрдХрдорд╛ рддреИрдирд╛рдд рдЧрд░реНрдпреМрдВ, рдЬрд╕рдорд╛ рд╣рд╛рдореАрд▓реЗ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдпреМрдВ:

  • рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдмреИ рд▓рд┐рдЦрд┐рдд рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдХреЛ рджреИрдирд┐рдХ рд░рди;
  • рдирд┐рд░реНрдорд╛рдг рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рдкреНрд░рдХреНрд╖реЗрдкрдгред

рд╕реБрд░реБрдорд╛ рддреНрдпрд╣рд╛рдБ рдереЛрд░реИ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдерд┐рдП, рд░ рддрд┐рдиреАрд╣рд░реВ рдПрдЙрдЯреИ рд╕реНрдЯреНрд░рд┐рдордорд╛ рдЧрд░рд┐рдПрдХрд╛ рдерд┐рдПред рд╡рд┐рдиреНрдбреЛрдЬ рд░рдирд░ GitLab рдорд╛ рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рджреМрдбрд▓реЗ рд╣рд╛рдореАрд▓рд╛рдИ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдЙрдкрдпреБрдХреНрдд рдмрдирд╛рдпреЛ: рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрд▓реЗ рдкрд░реАрдХреНрд╖рдг рдмреЗрдиреНрдЪрд▓рд╛рдИ рдзреЗрд░реИ рд╣рд▓реНрдХрд╛ рд░реВрдкрдорд╛ рд▓реЛрдб рдЧрд░реНрдпреЛ рд░ рд▓рдЧрднрдЧ рдХреБрдиреИ рд╕реНрд░реЛрддрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдиред

рд╕рдордп рдмрд┐рддреНрджреИ рдЬрд╛рдБрджрд╛, рдЕрдЯреЛрдЯреЗрд╕реНрдЯрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдмрдвреНрджреИ рдЧрдпреЛ, рд░ рд╣рд╛рдореАрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕рдорд╛рдирд╛рдиреНрддрд░ рд░реВрдкрдорд╛ рдЪрд▓рд╛рдЙрдиреЗ рдмрд╛рд░реЗ рд╕реЛрдЪреНрдпреМрдВ, рдЬрдм рдкреВрд░реНрдг рджреМрдб рд▓рдЧрднрдЧ рддреАрди рдШрдгреНрдЯрд╛ рд▓рд╛рдЧреНрди рдерд╛рд▓реНрдпреЛред рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдкрдирд┐ рджреЗрдЦрд╛ рдкрд░реНрдпреЛ:

  • рд╣рд╛рдореАрд▓реЗ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд╕реНрдерд┐рд░ рдерд┐рдП рднрдиреЗрд░ рдкреНрд░рдорд╛рдгрд┐рдд рдЧрд░реНрди рд╕рдХреЗрдиреМрдВ;
  • рд╕реНрдерд╛рдиреАрдп рдореЗрд╕рд┐рдирдорд╛ рдкрдЩреНрдХреНрддрд┐рдорд╛ рдзреЗрд░реИ рдкрдЯрдХ рдЪрд▓рд╛рдЗрдПрдХреЛ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ 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 GB RAM, 1 рдереНрд░реЗрдб)
 
рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рдкрд░реАрдХреНрд╖рдгрдХрд╛ рдлрд╛рдЗрджрд╛рд╣рд░реВ:

  • рд╕реЗрдЯ рдЕрдк рд░ рдЪрд▓рд╛рдЙрди рд╕рдЬрд┐рд▓реЛ;
  • CI рдорд╛ рдкреНрд░рдХреНрд╖реЗрдкрдгрд╣рд░реВ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдкрдорд╛ рд╕реНрдерд╛рдиреАрдп рдкреНрд░рдХреНрд╖реЗрдкрдгрд╣рд░реВ рднрдиреНрджрд╛ рдлрд░рдХ рдЫреИрдирдиреН;
  • рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрд▓реЗ рдПрдХрдЕрд░реНрдХрд╛рд▓рд╛рдИ рдЕрд╕рд░ рдЧрд░реНрджреИрди;
  • рдзрд╛рд╡рдХ рд╕реНрд░реЛрддрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВред

рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рдкрд░реАрдХреНрд╖рдгрдХрд╛ рдмреЗрдлрд╛рдЗрджрд╛рд╣рд░реВ:

  • рдкреВрд░рд╛ рдЧрд░реНрди рдзреЗрд░реИ рд▓рд╛рдореЛ рд╕рдордп рд▓рд┐рдиреБрд╣реЛрд╕реН;
  • рдкрд░реАрдХреНрд╖рдг рдХреЛ рд▓рд╛рдореЛ рд╕реНрдерд┐рд░рддрд╛;
  • рдзрд╛рд╡рдХ рд╕реНрд░реЛрддрд╣рд░реВрдХреЛ рдЕрдХреБрд╢рд▓ рдкреНрд░рдпреЛрдЧ, рдЕрддреНрдпрдиреНрдд рдХрдо рдЙрдкрдпреЛрдЧред

JVM рдлреЛрд░реНрдХрд╣рд░реВрдорд╛ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ

рдЖрдзрд╛рд░ рдлреНрд░реЗрдорд╡рд░реНрдХ рд▓рд╛рдЧреВ рдЧрд░реНрджрд╛ рд╣рд╛рдореАрд▓реЗ рдереНрд░реЗрдб-рд╕реЗрдл рдХреЛрдбрдХреЛ рдЦреНрдпрд╛рд▓ рдирдЧрд░реЗрдХреЛ рд╣реБрдирд╛рд▓реЗ, рд╕рдорд╛рдирд╛рдиреНрддрд░рдорд╛ рдЪрд▓реНрдиреЗ рд╕рдмреИрднрдиреНрджрд╛ рд╕реНрдкрд╖реНрдЯ рддрд░рд┐рдХрд╛ рдерд┐рдпреЛред cucumber-jvm-parallel-plugin Maven рдХреЛ рд▓рд╛рдЧреАред рдкреНрд▓рдЧрдЗрди рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдЫ, рддрд░ рд╕рд╣реА рд╕рдорд╛рдирд╛рдиреНрддрд░ рд╕рдЮреНрдЪрд╛рд▓рдирдХреЛ рд▓рд╛рдЧрд┐, рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдЕрд▓рдЧ рдмреНрд░рд╛рдЙрдЬрд░рд╣рд░реВрдорд╛ рдЪрд▓рд╛рдЙрдиреБ рдкрд░реНрдЫред рддреНрдпрд╣рд╛рдБ рдЧрд░реНрди рдХреЗрд╣рд┐ рдЫреИрди, рдореИрд▓реЗ рд╕реЗрд▓реЗрдиреЛрдЗрдб рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрдкрд░реНтАНрдпреЛред

рд╕реЗрд▓реЗрдиреЛрдЗрдб рд╕рд░реНрднрд░ рейреи рдХреЛрд░ рд░ реирек рдЬреАрдмреА рд░реНрдпрд╛рдо рднрдПрдХреЛ рдореЗрд╕рд┐рдирдорд╛ рд╕реБрд░реБ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рд╕реАрдорд╛ 32 рдмреНрд░рд╛рдЙрдЬрд░рд╣рд░реВрдорд╛ рд╕реЗрдЯ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ - 24 рдереНрд░реЗрдб рдкреНрд░рддрд┐ рдХреЛрд░ рд░ рд▓рдЧрднрдЧ 48 MB RAMред рдлрд▓рд╕реНрд╡рд░реВрдк, рдкрд░реАрдХреНрд╖рдг рд╕рдордп рддреАрди рдШрдгреНрдЯрд╛рдмрд╛рдЯ 1,5 рдорд┐рдиреЗрдЯрдорд╛ рдШрдЯрд╛рдЗрдпреЛред рджреМрдбрдХреЛ рдЧрддрд┐ рдмрдврд╛рдЙрдирд╛рд▓реЗ рд╕реНрдерд┐рд░реАрдХрд░рдг рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНтАНрдпреЛ: рдЕрдм рд╣рд╛рдореА рдЪрд╛рдБрдбреИ реиреж-рейреж рдкрдЯрдХ рдирдпрд╛рдБ рдЕрдЯреЛрдЯреЗрд╕реНрдЯрд╣рд░реВ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдЫреМрдВ рдЬрдмрд╕рдореНрдо рд╣рд╛рдореА рддрд┐рдиреАрд╣рд░реВ рднрд░рдкрд░реНрджреЛ рд░реВрдкрдорд╛ рджреМрдбрд┐рдПрдирдиреН рднрдиреНрдиреЗ рдирд┐рд╢реНрдЪрд┐рдд рд╣реБрдБрджреИрдиреМрдВред
рд╕рдорд╛рдзрд╛рдирдХреЛ рдкрд╣рд┐рд▓реЛ рдХрдордЬреЛрд░реА рд╕рдорд╛рдирд╛рдиреНрддрд░ рдереНрд░реЗрдбрд╣рд░реВрдХреЛ рд╕рд╛рдиреЛ рд╕рдВрдЦреНрдпрд╛рдХреЛ рд╕рд╛рде рдзрд╛рд╡рдХ рд╕реНрд░реЛрддрд╣рд░реВрдХреЛ рдЙрдЪреНрдЪ рдЙрдкрдпреЛрдЧ рдерд┐рдпреЛ: 4 рдХреЛрд░ рд░ 8 GB RAM рдорд╛, рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрд▓реЗ 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 GB RAM, 12 рдереНрд░реЗрдбрд╣рд░реВ)
 
рдкреНрд░реЛ:

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

Cons:

  • рдмрд╣реБ рдУрдПрд╕ / рдХрдиреНрдЯреЗрдирд░ рдЖрд╡рд╢реНрдпрдХ;
  • рдкреНрд░рддреНрдпреЗрдХ рдлреЛрд░реНрдХрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдЪреНрдЪ рд╕реНрд░реЛрдд рдЦрдкрдд;
  • рдкреНрд▓рдЧрдЗрди рдкреБрд░рд╛рдиреЛ рдЫ рд░ рдЕрдм рд╕рдорд░реНрдерд┐рдд рдЫреИрдиред 

рдЕрд╕реНрдерд┐рд░рддрд╛ рдХрд╕рд░реА рд╣рдЯрд╛рдЙрдиреЗ 

рдкрд░реАрдХреНрд╖рдг рдмреЗрдиреНрдЪрд╣рд░реВ рдЖрджрд░реНрд╢ рд╣реЛрдЗрдирдиреН, рдЬрд╕реНрддреИ рдЖрдлреИрд▓реЗ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрджрдЫред рдпреЛ рдЕрдЪрдореНрдордХреЛ рдХреБрд░рд╛ рд╣реЛрдЗрди рдХрд┐ рд╣рд╛рдореАрд╕рдБрдЧ рдзреЗрд░реИ рдлреНрд▓реНрдпрд╛рдХреА рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдЫрдиреНред рдЙрджреНрдзрд╛рд░рдорд╛ рдЖрдП maven surefire рдкреНрд▓рдЧрдЗрди, рдЬрд╕рд▓реЗ рдЕрд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрди рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд▓рдЧрдЗрди рд╕рдВрд╕реНрдХрд░рдгрд▓рд╛рдИ рдХрдореНрддрд┐рдорд╛ 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 тАж
рд╡рд┐рдХрд▓реНрдкрдХреЛ рд░реВрдкрдорд╛, PowerShell рд╕реНрдХреНрд░рд┐рдкреНрдЯ (PS1) рдХреЛ рд▓рд╛рдЧрд┐ Maven рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рд╕реЗрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

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

рдкреНрд░реЛ:

  • рдпреЛ рджреБрд░реНрдШрдЯрдирд╛ рд╣реБрдБрджрд╛ рдПрдХ рдЕрд╕реНрдерд┐рд░ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рдордп рдмрд░реНрдмрд╛рдж рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрди;
  • рдкрд░реАрдХреНрд╖рдг рдмреЗрдВрдЪ рд╕реНрдерд┐рд░рддрд╛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдХрдо рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

Cons:

  • рдлреНрд▓реЛрдЯрд┐рдВрдЧ рджреЛрд╖рд╣рд░реВ рдЫреБрдЯрд╛рдЙрди рд╕рдХрд┐рдиреНрдЫ;
  • рдЪрд▓реНрдиреЗ рд╕рдордп рдмрдвреНрдЫред

Cucumber 4 рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕рдВрдЧ рд╕рдорд╛рдирд╛рдиреНрддрд░ рдкрд░реАрдХреНрд╖рдг

рд╣рд░реЗрдХ рджрд┐рди рдкрд░реАрдХреНрд╖рдгрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдмрдвреНрджреИ рдЧрдпреЛред рд╣рд╛рдореАрд▓реЗ рдлреЗрд░рд┐ рд░рди рдмрдврд╛рдЙрдиреЗ рдмрд╛рд░реЗ рд╕реЛрдЪреНрдпреМрдВред рдердк рд░реВрдкрдорд╛, рдо рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдорд╛ рд╕рдХреЗрд╕рдореНрдо рдзреЗрд░реИ рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдПрдХреАрдХреГрдд рдЧрд░реНрди рдЪрд╛рд╣рдиреНрдЫреБред рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░рдХ рдпреЛ рдерд┐рдпреЛ рдХрд┐ рдзрд╛рд╡рдХрд╣рд░реВрдХреЛ рдкреБрд╕реНрддрд╛рд▓реЗ Maven рдкреНрд▓рдЧрдЗрди рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕рдорд╛рдирд╛рдиреНрддрд░рдорд╛ рджреМрдбрдБрджрд╛ рдзреЗрд░реИ рд╕рдордп рд▓рд╛рдЧреНрдпреЛред

рддреНрдпрд╕ рд╕рдордпрдорд╛, рдХрдХрдореНрдмрд░ 4 рдкрд╣рд┐рд▓реЗ рдиреИ рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рдпреЛ рд╕рдВрд╕реНрдХрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рдХрд░реНрдиреЗрд▓ рдкреБрди: рд▓реЗрдЦреНрдиреЗ рдирд┐рд░реНрдгрдп рдЧрд░реНрдпреМрдВред рд░рд┐рд▓реАрдЬ рдиреЛрдЯрд╣рд░реВрдорд╛ рд╣рд╛рдореАрд▓рд╛рдИ рдереНрд░реЗрдб рд╕реНрддрд░рдорд╛ рд╕рдорд╛рдирд╛рдиреНрддрд░ рдкреНрд░рдХреНрд╖реЗрдкрдг рдЧрд░реНрдиреЗ рд╡рд╛рдЪрд╛ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рд╕реИрджреНрдзрд╛рдиреНрддрд┐рдХ рд░реВрдкрдорд╛ рдпреЛ рд╣реБрдиреБрдкрд░реНрдЫ:

  • рдереНрд░реЗрдбрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдмрдврд╛рдПрд░ рдЕрдЯреЛрдЯреЗрд╕реНрдЯрд╣рд░реВрдХреЛ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЧрддрд┐рд▓рд╛рдИ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рдмрдврд╛рдЙрдиреБрд╣реЛрд╕реН;
  • рдкреНрд░рддреНрдпреЗрдХ рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐ рдзрд╛рд╡рдХрд╣рд░реВ рдЙрддреНрдкрдиреНрди рдЧрд░реНрдирдорд╛ рд╕рдордпрдХреЛ рд╣рд╛рдирд┐ рд╣рдЯрд╛рдЙрдиреБрд╣реЛрд╕реНред

рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдЕрдЯреЛрдЯреЗрд╕реНрдЯрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдлреНрд░реЗрдорд╡рд░реНрдХ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬ рдЧрд░реНрди рддреНрдпрддрд┐ рдЧрд╛рд╣реНрд░реЛ рдЫреИрдиред Cucumber 4 рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд░реАрдХреНрд╖рдг рд╕реБрд░реБрджреЗрдЦрд┐ рдЕрдиреНрддреНрдпрд╕рдореНрдо рд╕рдорд░реНрдкрд┐рдд рдереНрд░реЗрдбрдорд╛ рдЪрд▓рд╛рдЙрдБрдЫ, рддреНрдпрд╕реИрд▓реЗ рдХреЗрд╣реА рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рд░ рдЪреАрдЬрд╣рд░реВрд▓рд╛рдИ рдХреЗрд╡рд▓ ThreadLocal рдЪрд░рд╣рд░реВрдорд╛ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░рд┐рдпреЛред 
Idea refactoring рдЙрдкрдХрд░рдгрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд░реВрдкрд╛рдиреНрддрд░рдг рдЧрд░реНрджрд╛ рдореБрдЦреНрдп рдХреБрд░рд╛ рднрдиреЗрдХреЛ рд╕реНрдерд╛рдирд╣рд░реВ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБ рд╣реЛ рдЬрд╣рд╛рдБ рдЪрд░ рддреБрд▓рдирд╛ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдирд▓рдХреЛ рд▓рд╛рдЧрд┐ рдЬрд╛рдБрдЪ рдЧрд░реНрджреИ)ред рдердк рд░реВрдкрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рдЬреБрдирд┐рдЯ рд░рдирд░ рдХреНрд▓рд╛рд╕ рдПрдиреЛрдЯреЗрд╕рдирдорд╛ Allure рдкреНрд▓рдЧрдЗрди рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫред

рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рд╕реЗрдЯрдЕрдк рдЧрд░реНрдиреЗ рдЙрджрд╛рд╣рд░рдг:

 
<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 GB RAM, 24 рдереНрд░реЗрдбрд╣рд░реВ)

рдкреНрд░реЛ:

  • рдХрдо рд╕реНрд░реЛрдд рдЦрдкрдд;
  • рдХрд╛рдХрдбреАрдмрд╛рдЯ рдиреЗрдЯрд┐рдн рд╕рдорд░реНрдерди - рдХреБрдиреИ рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдкрдХрд░рдгрд╣рд░реВ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрди;
  • рдкреНрд░рддрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ 6 рднрдиреНрджрд╛ рдмрдвреА рдереНрд░реЗрдбрд╣рд░реВ рдЪрд▓рд╛рдЙрдиреЗ рдХреНрд╖рдорддрд╛ред

Cons:

  • рддрдкрд╛рдИрд▓реЗ рдпреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ рдХрд┐ рдХреЛрдбрд▓реЗ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ;
  • рдкреНрд░рд╡реЗрд╢ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб рдмрдвреНрдЫред

GitLab рдкреГрд╖реНрдард╣рд░реВрдорд╛ рдПрд▓реБрд░ рд░рд┐рдкреЛрд░реНрдЯрд╣рд░реВ

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

Allure рд░рд┐рдкреЛрд░реНрдЯрд╣рд░реВрдХреЛ рд╕рдмреИ рд╕реНрдХреНрд░рд┐рдирд╕рдЯ GitLab рдкреГрд╖реНрдард╣рд░реВрдорд╛ рд▓рд┐рдЗрдПрдХреЛ рдерд┐рдпреЛред рд╡рд┐рдиреНрдбреЛрдЬ рдкрд╛рд╡рд░рд╢реЗрд▓рдорд╛ - GitLab рдкреГрд╖реНрдард╣рд░реВрдорд╛ рд░рд┐рдкреЛрд░реНрдЯ рдбрд┐рдкреНрд▓реЛрдЗ рдЧрд░реНрдиреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдпрд╕ рдЕрдШрд┐ рддрдкрд╛рдИрдВрд▓реЗ рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдЪрд▓рд╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдЫ):

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

рдХреЗ рдЕрдиреНрддрдорд╛ 

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

рдЕрднреНрдпрд╛рд╕рд▓реЗ рджреЗрдЦрд╛рдПрдХреЛ рдЫ рдХрд┐ рдереНрд░реЗрдбрд╣рд░реВрдорд╛ рдЕрдЯреЛрдЯреЗрд╕реНрдЯрд╣рд░реВ рдЪрд▓рд╛рдЙрдБрджрд╛ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЙрддреНрдХреГрд╖реНрдЯ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдХреЛ рд╕рд╛рде рдиреНрдпреВрдирддрдордорд╛ рд╕реНрд░реЛрдд рдЦрдкрдд рдХрдо рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЧреНрд░рд╛рдлрд╣рд░реВрдмрд╛рдЯ рджреЗрдЦреНрди рд╕рдХрд┐рдиреНрдЫ, рдереНрд░реЗрдбрд╣рд░реВ рджреЛрдмреНрдмрд░ рдЧрд░реНрдирд╛рд▓реЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдорд╛ рд╕рдорд╛рди рдкреНрд░рд╡реЗрдЧрдХреЛ рдиреЗрддреГрддреНрд╡ рдЧрд░реНрджреИрдиред рдпрджреНрдпрдкрд┐, рд╣рд╛рдореАрд▓реЗ рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдирд┐рд░реНрдорд╛рдгрдорд╛ 2 рднрдиреНрджрд╛ рдмрдвреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдердкреНрди рд╕рдХреНрд╖рдо рднрдпреМрдВ, рдЬреБрди 200 рдорд┐рдиреЗрдЯрдорд╛ 5 рдкреБрди: рдЪрд▓рд╛рдЙрдБрджрд╛ рдкрдирд┐ред рдпрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рддрд┐рдиреАрд╣рд░реВрдмрд╛рдЯ рджреНрд░реБрдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ, рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛, рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдлреЗрд░рд┐ рджреЛрд╣реЛрд░реНрдпрд╛рдЙрдиреБрд╣реЛрд╕реНред

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди