Pregunta

ingrese la descripción de la imagen aquí Estoy intentando un proceso de selección de asiento para un autobús.Tengo un diseño de asiento con algunos asientos reservados y algunos no reservados.Necesito seleccionar un asiento sin libro.Necesito crear un bucle tocando coordenadas aleatorias en la pantalla hasta que pueda tocar un asiento sin libro.¿Cómo se puede hacer esto usando Calabash?

¿Fue útil?

Solución

Este hilo es un poco viejo. Pero de todos modos aquí va algo en la línea de lo que está buscando.

Desea tocar un cierto conjunto de coordenadas en la pantalla, consulte Si selecciona un asiento y luego lee el valor de la tarifa.

para que necesite un bucle. Puedes usar algo como esto. Desde tu foto puedo ver que solo tienes 8 asientos allí. Pero para hacerlo rápido, solo intente presionar las áreas que también pueden tener un asiento y decir que estamos mirando a 3x4 asientos.

a = 0
b = 0
while a < 3
  while b < 4 
     b += 1
  end
  a += 1
end

El bucle externo se ejecutará 3 veces, que es de adelante hacia atrás. El bucle interno se ejecutará 4 veces, que es asiento de izquierda a derecha.

Ahora debemos asegurarnos de que hagamos clic en cada posición, por lo que agregamos

performAction('click_on_screen',<x-value>, <y-value>)

y combinados tenemos algo como esto. Donde tiene X e Y que están iniciando posiciones y deben coincidir con las coordenadas del primer asiento. Luego, al principio, simplemente haga clic en esa ubicación y haga lo que necesita para obtener el precio de la tarifa. Después del primer clic, aumenta el valor XOFFSET por la distancia entre los dos asientos, y luego está listo para hacer clic en el segundo. Por favor, tenga en cuenta que hice esto más sencillo, así que en realidad la segunda prensa se tocará en la Isla. Pero en el 3º y el cuarto, deberías volver a golpear los asientos. Y luego haces eso por las dos siguientes filas después.

a = 0
b = 0
x = 100
y = 500
xOffset = x;
while a < 3
  while b < 4  
     performAction('click_on_screen', xOffset, y)
     b += 1
     xOffset += 200 
  end
  xOffset = x
  y += 200
  a += 1
end

Saludos cordiales Lasse

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top