docs: protected By createBy(TestContext context) {
          if (by != null) {
              return by;
          }
  
          switch (property) {
              case "id":
                  return By.id(context.replaceDynamicContentInString(propertyValue));
              case "class-name":
                  return By.className(context.replaceDynamicContentInString(propertyValue));
              case "link-text":
                  return By.linkText(context.replaceDynamicContentInString(propertyValue));
              case "css-selector":
                  return By.cssSelector(context.replaceDynamicContentInString(propertyValue));
              case "name":
                  return By.name(context.replaceDynamicContentInString(propertyValue));
              case "tag-name":
                  return By.tagName(context.replaceDynamicContentInString(propertyValue));
              case "xpath":
                  return By.xpath(context.replaceDynamicContentInString(propertyValue));
          }
  
          throw new CitrusRuntimeException("Unknown selector type: " + property);
      }