title: How to run all test classes but only start embedded Tomcat once when using Spring Boot?
body: <p>My project has a lot of <code>Test</code> classes like this:</p>
  
  <pre><code>@RunWith(SpringJUnit4ClassRunner.class)
  @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
  public class RefererCheckerTest {
  ...
  </code></pre>
  
  <p>Each time I want to run all test classes, everyone of them will show the log like this:</p>
  
  <blockquote>
    <p>2018-08-15 14:59:31.104 [main] INFO 
    o.s.b.c.e.t.TomcatEmbeddedServletContainer
    [TomcatEmbeddedServletContainer.java:201] -Tomcat started on port(s):
    63003 (http) </p>
    
    <p>2018-08-15 14:59:31.112 [main] INFO 
    c.b.s.m.filter.OAuthLoginTest [StartupInfoLogger.java:57] -Started
    OAuthLoginTest in 27.571 seconds (JVM running for 33.229)</p>
  </blockquote>
  
  <p>It seems that initializing a Spring Boot project and its embedded Tomcat costs a lot time. If I have 100 Test classes, it will cost me  <code>27.571 seconds *100</code> to run all test classes.</p>
  
  <p>Could I have a way to init Spring Boot and Embedded Tomcat only once when run through all my 100 test classes? Time will be saved if so.</p>