Squish/Finding List Items that End in a Given String/es

From Qt Wiki
Jump to navigation Jump to search

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

Buscando elementos de una lista que terminan en una cadena dada

Como Squish utiliza el texto completo del artículo para la identificación de los elementos de un list view, esto podría causar problemas cuando el comienzo del texto del elemento es diferente en función de por ejemplo la máquina que está ejecutando el caso de la prueba.

Una solución a esto podría ser buscar los items que terminan con una cadena dada, para evitar incluir la cadena con el prefijo cambiado. Esto se puede hacer usando la función que se muestra debajo, la misma hace click en un elemento que termina en una cadena dada en una columna especifica:

def clickListItem(obj, endValue, column):
 model = waitForObject(obj).model()
 rows = model.rowCount()

for i in range(rows):
 itemString=str(model.data(model.index(i, column), Qt.DisplayRole).toString())

if itemString.endswith(endValue):
 waitForObjectItem(obj, itemString)
 clickItem(obj, itemString, 0, 0, 0, Qt.LeftButton)
 return

test.fatal("Could not find item with end value: " + endValue)

Para seleccionar un item que termine con el string "value1" en una list view especifica, usamos: clickListItem(":MyQListView", "value1", 0)