### Question:
EtcdMetadataReport extends AbstractMetadataReport { @Override protected String doGetSubscribedURLs(SubscriberMetadataIdentifier subscriberMetadataIdentifier) { return etcdClient.getKVValue(getNodeKey(subscriberMetadataIdentifier)); } EtcdMetadataReport(URL url); @Override String getServiceDefinition(MetadataIdentifier metadataIdentifier);  }### Answer:
@Test public void testDoGetSubscribedURLs() throws ExecutionException, InterruptedException { String version = "1.0.0"; String group = null; String application = "etc-metadata-report-consumer-test"; String revision = "90980"; String protocol = "xxx"; URL url = generateURL(TEST_SERVICE, version, group, application); SubscriberMetadataIdentifier subscriberMetadataIdentifier = new SubscriberMetadataIdentifier(application, revision); Gson gson = new Gson(); String r = gson.toJson(Arrays.asList(url)); etcdMetadataReport.doSaveSubscriberData(subscriberMetadataIdentifier, r); CompletableFuture<GetResponse> response = etcdClientForTest.getKVClient().get(ByteSequence.from( etcdMetadataReport.getNodeKey(subscriberMetadataIdentifier), StandardCharsets.UTF_8)); String fileContent = etcdMetadataReport.doGetSubscribedURLs(subscriberMetadataIdentifier); Assertions.assertNotNull(fileContent); Assertions.assertEquals(fileContent, r); }