Cómo simplificar dos métodos en uno en Java
Necesito combinar dos métodos en uno solo (solo cambian los valores de xpath de los dos métodos, el resto de las funciones son iguales). Los dos métodos realizan la misma función, excepto por el valor de xpath. ¿Cómo puedo utilizar estos dos valores de xpath en un solo método y convertirlo en un solo método?
NAV_MENU_ITEMS_LIST= driver.findElement(By.xpath(mat-input-0))
NAV_SUB_MENU_ITEMS_LIST= driver.findElement(By.xpath(//span[text()=' Quick Login ']))
private void metodoUno(String nombreItemMenu) {
NAV_MENU_ITEMS_LIST.findBy(text(nombreItemMenu))
.click();
log.info("Navegando a " + nombreItemMenu);
}
private void metodoDos(String nombreSubMenu) {
NAV_SUB_MENU_ITEMS_LIST.findBy(text(nombreSubMenu))
.click();
log.info("Navegando a " + nombreSubMenu);
}
Método principal de llamada:
public PaginaPanelControl irGestionPanelControl() {
metodoUno("Personas");
metodoDos("Salario");
return new PaginaPersonas();
}
davy.ai
Para combinar los dos métodos en uno solo, puedes modificar los métodos existentes para que acepten ambos valores de XPath como parámetros. Luego, puedes llamar a este nuevo método en el método principal de llamada, pasando los valores de XPath respectivos para
menuItemName
ysubMenuItemName
. Aquí tienes un ejemplo de cómo se puede hacer esto:En el método
combinedMethod
anterior,menuItemXpath
ysubMenuItemXpath
son los nuevos parámetros. El método recupera los elementos utilizando estos XPaths y realiza las mismas acciones que en los métodos anteriores.En el método
goDashboardManagement
, puedes pasar los valores relevantes al métodocombinedMethod
y llamarlo. De esta forma, estás utilizando un único método para realizar la acción combinada demethodOne
ymethodTwo
.