Estoy trabajando en un archivo de prueba automatizado que comprueba si los valores CSS correctos se utilizan para elementos específicos dentro de una página web. Parece que no puedo averiguar cómo puedo verificar varios valores CSS para ver si todos están correctos, pero además de eso, cuando es 1 o más correcto, puedo mostrar un mensaje o un error que no es el 100% de los valores. Actualmente correcto.

Este es mi código en este momento,

WebElement buttons = driver.findElement(By.className("primaryButton"));
    if (buttons.getCssValue("font-size").equals("14px")) 
    {
        System.out.println("Font-size is correct");
    }       
    if (buttons.getCssValue("color").equals("rgba(255, 255, 255, 1)")) 
    {
        System.out.println("Font-color is correct");
    }
    if (buttons.getCssValue("background-color").equals("rgba(89, 192, 237, 1)")) 
    {
        System.out.println("Background-color is correct");
    }
    if (buttons.getCssValue("border-radius").equals("2px")) 
    {
        System.out.println("Border-radius is correct");
    }
    else 
    {
        System.out.println("Test was not 100% correct, check back to see what value is 
        incorrect");
    }

Me encantaría si alguien pudiera ayudarme, no estoy seguro de si es 100% claro cuál es mi problema, pero espero que alguien lo entienda. El inglés no es mi idioma nativo.

0
crucio draco 8 jun. 2021 a las 20:07

2 respuestas

La mejor respuesta

Si todo lo que está tratando de validar es si todas las condiciones se cumplen o no haría esto más corta, así:

WebElement buttons = driver.findElement(By.className("primaryButton"));
if(!buttons.getCssValue("font-size").equals("14px") || !buttons.getCssValue("color").equals("rgba(255, 255, 255, 1)") || !buttons.getCssValue("background-color").equals("rgba(89, 192, 237, 1)") || !buttons.getCssValue("border-radius").equals("2px")) 
    System.out.println("Test was not 100% correct, check back to see what value is incorrect");
0
Prophet 8 jun. 2021 a las 17:21

¿Por qué no anidado si los bloques?

Podrías algo así:

 if (buttons.getCssValue("font-size").equals("14px")) 
    {
        System.out.println("Font-size is correct");
        System.out.println("Bot is going to check color now");
        if (buttons.getCssValue("color").equals("rgba(255, 255, 255, 1)")) 
        {
           System.out.println("Font-color is correct");
        } 
        else {
           System.out.println("Font-color is **not** correct");
        } 
    }
  else {
       System.out.println("Test was not 100% correct, check back to see what value is 
    incorrect");
 }  

Y así..

0
cruisepandey 8 jun. 2021 a las 17:22