Con Selenium IDE, ¿cómo puedo comprobar si el texto interno de un elemento contiene una cadena específica? Por ejemplo:Selenio: prueba si el elemento contiene texto
<p id="fred">abcde</p>
'id=fred' contains "bcd" = true)
Con Selenium IDE, ¿cómo puedo comprobar si el texto interno de un elemento contiene una cadena específica? Por ejemplo:Selenio: prueba si el elemento contiene texto
<p id="fred">abcde</p>
'id=fred' contains "bcd" = true)
El Selenium-IDE documentation es útil en esta situación.
El comando que está buscando es assertText
, el localizador sería id=fred
y el texto por ejemplo *bcd*
.
¿Es capaz de usar jQuery si es así intentar algo así como
$("p#fred:contains('bcd')").css("text-decoration", "underline");
cómo sería esto posible con selenio IDE? –
Tener una lectura de esto debería ayudar. http://www.vcskicks.com/selenium-jquery.php –
Parece expresiones regulares podrían funcionar:
"The simplest character set is a character. The regular expression "the" contains three
character sets: "t," "h" and "e". It will match any line with the string "the" inside it.
This would also match the word "other". "
(Desde el sitio: http://www.grymoire.com/Unix/Regular.html)
Si está usando Visual Studio hay una funcionalidad para evaluar cadenas con regula r expresiones de todo tipo (no sólo contiene):
using System.Text.RegularExpressions;
Regex.IsMatch("YourInnerText", @"^[a-zA-Z]+$");
La expresión que he publicado comprobará si la cadena contiene sólo letras.
Su expresión regular sería según mi enlace ser "bcd" o alguna cadena que construya en tiempo de ejecución. O:
Regex.IsMatch("YourInnerText", @"bcd");
(Algo así como que de todos modos)
Espero que ayudó.
Puede utilizar el comando assertTextPresent
o verifyText
sí, pero estaba tratando de obtener una coincidencia parcial, no completa. Además, no es solo ese comando el que se puede usar. –
Oh. Justo en el mismo momento. –
Sí. Menos de un minuto demasiado lento. Hehe –
También puede utilizar:
assertElementPresent
css=p#fred:contains('bcd')
Gracias, esto era lo que necesitaba: 'css = p: contains ('foo')'. Sin embargo, me dijeron que está en desuso. – LarsH
, aunque lo tengo un poco por delante, le daré los puntos de respuesta. –
@Slanec ¿Hay algo que pueda buscar en el texto y hacer clic en él? –
La parte clave de la documentación está más abajo en [Patrones de texto coincidentes] (http://docs.seleniumhq.org/docs/02_selenium_ide.jsp#matching-text-patterns) que habla de los comodines. – icc97