Version Concombre: 7.0.0
Version du nœud : 14.15.0
Système d'exploitation : MacOS Big Sur v11.2.1
Étant donné le cas de test suivant :
<strong i="9">@parent_tag</strong>
Scenario Outline: Sample test case
Given this is a test case
When I have the following data table
| <scenario_example> |
Then a JSON report will be generated
<strong i="10">@child_tag_1</strong>
Examples:
| scenario_example |
| Test Child Tag 1 |
<strong i="11">@child_tag_2</strong>
Examples:
| scenario_example |
| Test Child Tag 2 |
Lorsque j'exécute le scénario de test ci-dessus avec la balise : "--tags @child_tag_2" et "-f json:reports/cucumber-report.json ", le
TypeError: Cannot read property 'location' of undefined
at /Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:185:34
at arrayMap (/Users/project-folder/node_modules/lodash/lodash.js:653:23)
at Function.map (/Users/project-folder/node_modules/lodash/lodash.js:9622:14)
at JsonFormatter.getScenarioTags (/Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:180:33)
at JsonFormatter.getScenarioData (/Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:125:24)
at /Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:84:29
at Array.map (<anonymous>)
at /Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:69:36
at /Users/project-folder/node_modules/lodash/lodash.js:3585:27
at /Users/project-folder/node_modules/lodash/lodash.js:4967:15
at baseForOwn (/Users/project-folder/node_modules/lodash/lodash.js:3032:24)
at /Users/project-folder/node_modules/lodash/lodash.js:4936:18
at baseMap (/Users/project-folder/node_modules/lodash/lodash.js:3584:7)
at Function.map (/Users/project-folder/node_modules/lodash/lodash.js:9622:14)
at JsonFormatter.onTestRunFinished (/Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:63:43)
at EventEmitter.<anonymous> (/Users/project-folder/node_modules/@cucumber/cucumber/lib/formatter/json_formatter.js:23:22)
Par conséquent, je ne peux générer aucun rapport JSON.
J'ai essayé de supprimer les balises d'exemple de contour de scénario et la génération du rapport JSON s'est poursuivie.
Salut :)
Lorsque vous dites "J'ai essayé de supprimer les balises d'exemple de contour de scénario et il a procédé à la génération du rapport JSON.", avez-vous supprimé uniquement les balises tout en conservant deux exemples de tableaux ? Ou avez-vous fusionné les deux exemples en un seul ?
Salut @aurelien-reeves,
J'ai supprimé à la fois les balises et la table des deux exemples, et j'ai juste utilisé 1 table d'exemples. :) Quelque chose comme ça:
<strong i="7">@parent_tag</strong> <strong i="8">@child_tag_2</strong>
Scenario Outline: Sample test case
Given this is a test case
When I have the following data table
| <scenario_example> |
Then a JSON report will be generated
Examples:
| scenario_example |
| Test Child Tag 2 |
Merci beaucoup!
Merci pour l'info @xenbartolokath
J'ai eu le même problème mais j'ai réalisé que je filtrais lorsque j'exécute la commande cli IE
npm run rapporteur -- --cucumberOpts.tags='not ( @wip ou @bug ou @backlog) et @blocker '
J'avais une balise différente dans la table d'exemple
@unautre_tag
Exemples:
| scénario_exemple |
| Tester la balise enfant 2 |
J'ai changé la commande en ceci et travaille pour moi-->
npm run rapporteur -- --cucumberOpts.tags='not ( @wip ou @bug ou @backlog) et ( @blocker ou @another_tag )'
Merci pour votre retour @yopasa94
J'ai approfondi la question.
En effet, le formateur json ne supporte pas les balises sur les exemples. Il devrait en fait.
Le nouveau json-formatter n'aide pas ici. Il ne reconnaît pas non plus les balises d'exemple.
Comme le formateur json intégré est obsolète, je me concentrerai sur la réparation du nouveau format autonome.
@xenbartolokath @yopasa94 avez-vous un besoin spécifique d'utiliser le formateur obsolète hérité ? Ou autre chose qui vous empêcherait d'utiliser le nouveau formateur json autonome ?
Quelle version de concombre utilisez-vous ?
Salut @aurelien-reeves,
Pour ce problème, j'utilisais @cucumber/cucumber v7.0.0, mais j'utilise toujours la v6.0.5 sur d'autres référentiels que j'ai.
Je n'ai pas de besoin spécifique dans le formateur obsolète hérité. Pour le formateur json autonome, j'ai vu que je devais télécharger et exécuter certaines commandes pour l'installer, et je ne sais pas si la configuration actuelle de mon pipeline s'adapterait aux modifications. Je préfère l'installer via npm si disponible.
Tant que nous pouvons mettre des balises sur les tables d'exemples et générer des rapports sans problème, alors ça me va. ??
Pour info, le json-formatter autonome est un binaire autonome écrit en go. Il ne nécessite aucune installation en plus de s'assurer qu'il est exécutable.
Pour info, le json-formatter autonome est un binaire autonome écrit en go. Il ne nécessite aucune installation en plus de s'assurer qu'il est exécutable.
J'ai compris. Merci pour la clarification. ??
Un correctif a été fusionné dans le nouveau json-formatter autonome
Mais je vais essayer de réparer le formateur intégré hérité aussi
@xenbartolokath @yopasa94 Le json-formatter autonome vient d'être publié avec le support d'exemples étiquetés.
Vous pouvez le télécharger ici : https://github.com/cucumber/cucumber/releases/tag/cucumber-json-formatter%2Fv17.0.2
@aurelien-reeves Je vais essayer cela et vous fera savoir s'il y a des retours de ma part. Merci! J'ai apprécié votre temps et vos efforts
Commentaire le plus utile
Un correctif a été fusionné dans le nouveau json-formatter autonome
Mais je vais essayer de réparer le formateur intégré hérité aussi