es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Verificar la visibilidad de un elemento específico de la lista – Katalon

Tengo el siguiente método que recibe una entrada entera y hace clic en el elemento de una lista.

def selectItem estático(int itemIndex) {
    WebUI.waitForElementVisible(findTestObject('dashboard/ItemList'), 7, FailureHandling.STOP<em>ON</em>FAILURE);

<pre><code>final List&lt;TestObject&gt; items =
        CommonUtils.findVisibleElementsFromTestObject(findTestObject(&#39;dashboard/ItemList&#39;));

WebUI.click(items.get(itemIndex));
</code></pre>

}

En mi clase de prueba, estoy cargando la página del panel de control y antes de hacer clic en un elemento en particular, quiero asegurarme de que sea visible en la pantalla.

Por ejemplo,

Dashboard.selectItem(17) debería hacer clic en el decimosexto elemento de la lista. Sé que una forma es verificar la visibilidad de la lista completa, pero estoy buscando una forma de verificar la visibilidad de un elemento específico (el decimosexto en mi caso) de una lista.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Una forma de verificar la visibilidad de un elemento específico en una lista es modificar el método selectItem para que primero verifique si el elemento deseado es visible en la pantalla antes de hacer clic en él. Aquí hay una versión actualizada del método que incluye esta verificación:

    def static selectItem(int itemIndex) {
        WebUI.waitForElementVisible(findTestObject('dashboard/ItemList'), 7, FailureHandling.STOP_ON_FAILURE);
    
        final List<testobject> items =
                CommonUtils.findVisibleElementsFromTestObject(findTestObject('dashboard/ItemList'));
    
        TestObject item = items.get(itemIndex);
    
        WebUI.waitForElementVisible(item, 5, FailureHandling.CONTINUE_ON_FAILURE);
    
        if (WebUI.verifyElementPresent(item, 5)) {
            WebUI.click(item)
        } else {
            log.logWarning("El elemento ${itemIndex} no está visible en la pantalla.")
        }
    }
    

    En esta versión del método, primero recuperamos el elemento deseado de la lista usando el parámetro itemIndex. Luego usamos el método waitForElementVisible para verificar si el elemento es visible en la pantalla, con un tiempo de espera corto de 5 segundos. Si el elemento es visible, luego lo hacemos clic en él usando el método click. Si el elemento no está visible, simplemente registramos un mensaje de advertencia.

    Para usar este método actualizado en su clase de prueba, simplemente puede llamar Dashboard.selectItem(16) y el método ahora verificará si el decimosexto elemento es visible en la pantalla antes de hacer clic en él.

Comments are closed.