Tengo tres versiones de un backend que estoy probando. Me gustaría ejecutar especificaciones de características similares en comparación con las tres versiones.Pepino: cómo organizar un conjunto de prueba complejo
Al principio, pensé que acababa de organizar todo en una estructura de directorios, tales como:
features/
v1/
something.feature
step_definitions/
something_steps.rb
v2/
something.feature
step_definitions/
something_steps.rb
v3/
something.feature
step_definitions/
something_steps.rb
Sin embargo, pepino parece acople todo, lo que significa que termino con las definiciones ambiguas paso.
entonces pensé en la siguiente estructura:
features/
v1/
something.feature
v2/
something.feature
v3/
something.feature
step_definitions/
something_steps.rb
Me defino una variable en el archivo de función en algún lugar, lo que indica cuál es la versión que uno es para, y me gustaría tener un montón de "si" dentro del archivo de pasos, para elegir rutas de código dependiendo de esa variable de versión. Sin embargo, no he encontrado una forma obvia de definir esa variable en el archivo de características.
¿Hay alguna manera en que pueda organizar las cosas, o tendré que crear varias raíces "características", una por versión, lo que sería una solución horrible dado que implicaría múltiples invocaciones de pepino?
v1/
features/
something.feature
step_definitions/
something_steps.rb
v2/
features/
something.feature
step_definitions/
something_steps.rb
v3/
features/
something.feature
step_definitions/
something_steps.rb
Enchufe desvergonzado - De hecho, escribí una joya para ayudar con esta situación exacta: https://github.com/jmerrifield/cuke_iterations –