@VisibleForTesting
  static Optional<String> getChildValue(@Nullable Xpp3Dom dom, String... childNodePath) {
    if (dom == null) {
      return Optional.empty();
    }

    Xpp3Dom node = dom;
    for (String child : childNodePath) {
      node = node.getChild(child);
      if (node == null) {
        return Optional.empty();
      }
    }
    return Optional.ofNullable(node.getValue());
  }
@Test
  public void testGetChildValue_null() {
    assertThat(MavenProjectProperties.getChildValue(null)).isEmpty();
    assertThat(MavenProjectProperties.getChildValue(null, "foo", "bar")).isEmpty();
  }