我正在編寫一些單元測試,以涵蓋一些從GCS(Google雲存儲)上傳和讀取文件。單元測試與雲存儲
但很顯然,這些文件沒有存儲在本地,但上傳的,因爲我得到以下錯誤:
<?xml version='1.0' encoding='UTF-8'?><Error><Code>AuthenticationRequired</Code><Message>Authentication required.</Message></Error>
at com.google.appengine.tools.cloudstorage.RetryHelper.doRetry(RetryHelper.java:120)
at com.google.appengine.tools.cloudstorage.RetryHelper.runWithRetries(RetryHelper.java:166)
at com.google.appengine.tools.cloudstorage.RetryHelper.runWithRetries(RetryHelper.java:156)
at com.google.appengine.tools.cloudstorage.GcsServiceImpl.createOrReplace(GcsServiceImpl.java:70)
單元測試看起來是這樣的:
private final LocalServiceTestHelper helper = new LocalServiceTestHelper(
new LocalDatastoreServiceTestConfig().setDefaultHighRepJobPolicyUnappliedJobPercentage(1).setNoStorage(true),
new LocalCapabilitiesServiceTestConfig(),
new LocalBlobstoreServiceTestConfig(),
new LocalImagesServiceTestConfig()
);
@Before
public void setUp() {
helper.setUp();
}
@After
public void tearDown() {
helper.tearDown();
}
@Test
public void someTest() { ... }
什麼是正確的方法在單元測試中本地運行GCS?
還沒有嘗試過這些測試,但發現如果我運行maven測試他們的工作。如果我在Idea中運行它們,它會因給定的錯誤而失敗。 – Drejc 2014-09-10 11:34:02