2013-06-06 1 views
2

Я записывал тестовый блок стропы для серверной части, где мой тестовый комплект запускается, попадая в сервлет junit, с клиентской стороны, используя следующий фрагмент кода. Моему тесту нужен целевой FTP-сервер для этой цели, который я хочу внедрить в эту функцию, используя @before и очистка дампа с помощью @after или любых других наилучших возможных способов, как это сделать с помощью запускаемого тестового класса, который вызывает сервлет юнита.sling test case SERVER side

@RunWith(SlingRemoteTestRunner.class) 
    public class FTPImporterTest extends SlingTestBase implements SlingRemoteTestParameters, SlingTestsCountChecker { 
     /** 
     * 
     */ 
     public static final String TEST_SELECTOR = "com.my.proj.FTPImporterTesting.FTPImporterServerTest"; 
     public static final int TESTS_AT_THIS_PATH = 3; 
     /** 
     * 
     */ 

     public int getExpectedNumberOfTests() { 
      return TESTS_AT_THIS_PATH; 
     } 

     public String getJunitServletUrl() { 
      return getServerBaseUrl() + "/system/sling/junit"; 
     } 

     public String getTestClassesSelector() { 
      return TEST_SELECTOR; 
     } 

     public String getTestMethodSelector() { 
      return null; 
     } 

     public void checkNumberOfTests(int i) { 
      Assert.assertEquals(TESTS_AT_THIS_PATH, i); 
     } 

    } 

ответ

0

Я рекомендую использовать более новый подход с Sling Teleporter Junit Rule. Он позволяет писать тесты, выполняемые на стороне клиента, но внутренний оператор JUnit заменяется на стороне клиента и телепортируется в sling, где он работает с использованием основной структуры junit.

Вот пример в документации:

public class BasicTeleporterTest { 

@Rule 
public final TeleporterRule teleporter = TeleporterRule.forClass(getClass(), "Launchpad"); 

@Test 
public void testConfigAdmin() throws IOException { 
    final String pid = "TEST_" + getClass().getName() + UUID.randomUUID(); 

    final ConfigurationAdmin ca = teleporter.getService(ConfigurationAdmin.class); 
    assertNotNull("Teleporter should provide a ConfigurationAdmin", ca); 

    final Configuration cfg = ca.getConfiguration(pid); 
    assertNotNull("Expecting to get a Configuration", cfg); 
    assertEquals("Expecting the correct pid", pid, cfg.getPid()); 
} 

}