У меня есть код, который я развертываю в Google App Engine - Java (GAE / J), который использует URLFetchService
.Я хотел бы использовать JUnit для тестирования этого кода.В соответствии с документацией по тестированию представляется, что у меня должен быть тест, который использует их LocalURLFetchServiceTestConfig
класс ROUGHLY следующим образом:
public class MyRemoteServiceTests {
private static final LocalURLFetchServiceTestConfig urlConfig = new LocalURLFetchServiceTestConfig();
private static final LocalServiceTestHelper helper =
new LocalServiceTestHelper(urlConfig);
@Before
public void setUp() throws Exception {
service = new SampleService();
helper.setUp();
}
@After
public void tearDown() throws Exception {
service = null;
helper.tearDown();
}
@Test
public void testThatCallsCodeThatUsesUrlFetch() {
Object data = service.getRemoteDataUsingUrlFetch("foo", "bar");
Assert.assertNotNull(data);
}
}
Я считаю, что этот тест по-прежнему не проходит несмотря на«помощник», как предлагается в документации GAE / J по тестированию: «The API package 'urlfetch' or call 'Fetch()' was not found.
».
Я предполагал, что использование «помощника» каким-то образом настроит среду GAE так, что при вызове URLFetchServiceFactory.getURLFetchService()
из моего getRemoteDataUsingUrlFetch
метода возвращаемый интерфейс был бы экземпляром LocalURLFetchService
, который просто «работал», но, похоже, это НЕ так.
- Как я могу проверить этот код?
- Я что-то упустил?(Я довольно новичок в GAE ...)
- Нужно ли мне реорганизовать мой
getRemoteDataUsingUrlFetch
, чтобы он не использовал URLFetchServiceFactory.getURLFetchService()
, потому что это делает его непроверенным локально ???(Звучит так, будто это действительно отстой ...)
Любая помощь / предложения очень ценятся!