python - Cómo escribir múltiples condiciones de if-statement en Robot Framework
python-2.7 selenium (3)
Tengo problemas para escribir if
condiciones en Robot Framework.
Quiero ejecutar
Run Keyword If ''${color}'' == ''Red'' OR ''${color}'' == ''Blue'' OR ''${color}'' == ''Pink'' Check the quantity
Puedo usar esta Run keyword If
" Run keyword If
" con una condición, pero por más de una condición, recibí este error:
FALLO: el nombre de la palabra clave no puede estar vacío.
Y también me gustaría usar estas palabras clave:
Run Keyword If ''${color} == ''Blue'' AND ''${Size} == ''Small'' AND ''${Design}'' != ''${Simple}'' Check the quantity
Y
Run Keyword Unless ''${color}'' == ''Black'' OR ''${Size}'' == ''Small'' OR ''${Design}'' == ''Simple''
Pero acabo de conseguir errores.
Debe usar mayúsculas pequeñas "o" y "y" en lugar de OR y AND.
Y tenga cuidado también con los espacios / tabulaciones entre palabras clave y argumentos (necesita al menos dos espacios).
Aquí hay un ejemplo de código con sus tres palabras clave que funcionan bien:
Aquí está el archivo ts.txt
:
*** test cases ***
mytest
${color} = set variable Red
Run Keyword If ''${color}'' == ''Red'' log to console /nexecuted with single condition
Run Keyword If ''${color}'' == ''Red'' or ''${color}'' == ''Blue'' or ''${color}'' == ''Pink'' log to console /nexecuted with multiple or
${color} = set variable Blue
${Size} = set variable Small
${Simple} = set variable Simple
${Design} = set variable Simple
Run Keyword If ''${color}'' == ''Blue'' and ''${Size}'' == ''Small'' and ''${Design}'' != ''${Simple}'' log to console /nexecuted with multiple and
${Size} = set variable XL
${Design} = set variable Complicated
Run Keyword Unless ''${color}'' == ''Black'' or ''${Size}'' == ''Small'' or ''${Design}'' == ''Simple'' log to console /nexecuted with unless and multiple or
y esto es lo que obtengo cuando lo ejecuto:
$ pybot ts.txt
==============================================================================
Ts
==============================================================================
mytest .
executed with single condition
executed with multiple or
executed with unless and multiple or
mytest | PASS |
------------------------------------------------------------------------------
El siguiente código funcionó bien:
Run Keyword if ''${value1}'' / / == / / ''${cost1}'' / and / / ''${value2}'' / / == / / ''cost2'' LOG HELLO
Solo asegúrese de poner un espacio antes y después de "y" Palabra clave ..