comment faire pour forcer un concombre scénario à l'échec?

Est-il un moyen de forcer un concombre scénario à l'échec?

J'ai besoin de vérifier pour un peu de faute de scénarios à la fin de chacun de mes tests. J'ai donc pensé que je pouvais faire la vérification pour une "erreur" boîte de dialogue, puis échoue à l'examen, s'il se produit.

C'est possible avec le code ci-dessous il y a cependant un problème. Une fois que je relance l'exception de l'échec! la fonction, puis le concombre arrête l'exécution du reste de l'Après-crochet, de sorte que la fonction de déconnexion ne marche pas appelée.

Était:

After() do |scenario|  
  #Checking for Error popups
  if page.has_selector?(:dialog_message, 1, :text => 'Error')
    fail!(raise(ArgumentError.new('Unexpected Error dialog!')))
  end
  logout
end

Maintenant:

After() do |scenario|  
  #Checking for Error popups
  if page.has_selector?(:dialog_message, 1, :text => 'Error')
    scenario.fail!(logout)
  end
end

Est-il un meilleur moyen d'échouer à un concombre test sans le déclenchement d'une exception?

OriginalL'auteur snowstreams | 2012-08-03