web-dev-qa-db-fra.com

comment commenter une histoire dans JBehave Story

J'ai une histoire comme suit

Scenario: 

Given user is on Login page

When user types login details with xxx as user xxx as passwd and submits

Then dashboard is shown

s'il vous plaît indiquer comment commenter ou ne pas faire courir pour une ligne (exemple: 2 lignes ne doivent pas subir de test après 1 directement 3 lignes)

29
Vijay

Vous souhaitez désactiver temporairement une étape de votre scénario? Commentez la ligne en utilisant le préfixe "!-- ", telle que

Given user is on Login page
!-- When user types login details with xxx as user xxx as passwd and submits
Then dashboard is shown

Voir la documentation sur JBehave: http://jbehave.org/reference/stable/grammar.html

37
dertseha

Cliquez ici pour en savoir plus sur Eclipse IDE, cliquez ici pour afficher le descriptif de Eclipse IDE.Ctrl+Tкомментировать одну/несколько сюжетных линий.

2
Chirag Khimani

Utilisez ce !-- lorsque l'utilisateur saisit les informations de connexion avec xxx comme utilisateur xxx comme mot de passe et le soumet. Remarque: Pour le commentaire "!--", l’espace est obligatoire, sinon la procédure sera exécutée.

1
Suraj

Je sais que c'est une vieille question, mais j'ai trouvé une solution à cela et je partage pour la communauté:

'! -' est le signe pour l'étape annulable, désigne les étapes qui doivent être désactivées.

Dans notre projet, nous utilisons une histoire Parser:

this.currentConf.useStoryParser(new TransformingStoryParser(this.currentConf.storyParser(), this.transformComment, this.transformCutter));

Nous devions intégrer de la documentation dans les user stories. Nous avons donc différencié les commentaires des étapes annulables:

!-- Then ... => étapes annulables (façon native)

!--| This is a a comment... => Comment 

Avec le transformateur, les commentaires sont supprimés de l’histoire avant son exécution.

C'est la même chose pour '| -', un example . Nous avons introduit '| - |', ou un 'cutter' pour empêcher que le reste de l'histoire ne soit exécuté.

Les classes (this.transformComment, this.transformCutter):

 La classe publique ParserTransformingComment implémente StoryTransformer {

 public ParserTransformingComment () {
 } 


 /**
 * Suppression de commentaires 
 */
 graveur privé vC = nouveau graveur ("(? ms) ^ ((! - \\ | [^ \\ r \\ n] *) (?: \\ r? \\ n)?)") {. . @Passer outre
 public String replacement () {
 System.out.println ("Ignoré:" + this.group (1)); 
 revenir "";
 } 
 }; 

 @Passer outre
 public String transform (String pStoryAsText) {
 retourne vC.rewrite (pStoryAsText); 
 } 

 } 

 La classe publique ParserTransformingCutter implémente StoryTransformer {
 public ParserTransformingCutter () {
 } 

 /**
 * Gestion des 'cutter' .
 */
 graveur privé vS = nouveau graveur ("(? ms) ^ (\\ | - \\ |. *)") {
 @Passer outre
 public String replacement () {
 System.out.println (">>> Cette section sera ignorée:"); 
 System.out.println (StringUtils.lineStart (">", this.group (1))); 
 System.out.println ("-------------"); 
 revenir "";
 } 
 }; 


 @Passer outre
 public String transform (String pStoryAsText) {
 renvoyer vS.rewrite (pStoryAsText); 
 } 

 } 

EDIT: Depuis Jbehave 4.3, les commentaires sont mieux gérés, même sans StoryTransformer:


! - BlahBlah - complètement ignoré par Jbehave 
! - Alors ... - étapes ignorées (enregistrées dans le rapport) 
! - Blah blah - le rapport)

Cordialement, David C.

1
David Clain