2012-05-23 5 views
0

Я пытаюсь единицу проверить некоторые из кодов, которые используют Blobstore API, однако я получаю NullPointerException для этого кода:Unit тестирование Blobstore API

@ContextConfiguration(locations = { "classpath:service/client-config.xml" }) 
    @RunWith(SpringJUnit4ClassRunner.class) 
    public class BlobstoreDaoTest { 
     private final LocalServiceTestHelper helper = 
       new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig()); 
     private final LocalBlobstoreServiceTestConfig config = 
       new LocalBlobstoreServiceTestConfig(); 

     @Autowired 
     private BlobstoreDao dao; 

     @Before 
     public void setUp() { 
      config.setUp(); 
      helper.setUp(); 
     } 

     @After 
     public void tearDown() { 
      helper.tearDown(); 
      config.tearDown(); 
     } 

     @Test 
     public void doTest() { 
     // Code omitted 
     } 
    } 

Ошибка:

java.lang.NullPointerException 
    at com.google.appengine.tools.development.testing.LocalBlobstoreServiceTestConfig.setUp(LocalBlobstoreServiceTestConfig.java:52) 
+0

Помощник shoul d содержит все конфиги и вызывается только его setUp/tearDown. Локальный blobstore, вероятно, не видит, что хранилище данных настроено, поскольку оно вне его контекста. –

ответ

3

Вероятно, вам нужно что-то в этом направлении:

public class BlobstoreDaoTest { 
    private LocalServiceTestHelper helper = 
      new LocalServiceTestHelper(
       new LocalDatastoreServiceTestConfig(), 
       new LocalBlobstoreServiceTestConfig() 
      ); 

    @Before 
    public void setUp() { 
     helper.setUp(); 
    } 

    @After 
    public void tearDown() { 
     helper.tearDown(); 
    } 
... 
Смежные вопросы