2010-07-12 5 views
6

Je viens d'installer le concombre, et je l'ai testé. J'ai l'erreur suivante:Erreurs de concombre supprimées (pas affichées complètement)

teefcomp:cucumber-intro teef$ cucumber features/manage_users.feature 
Using the default profile... 
F----F 

Failing Scenarios: 
cucumber features/manage_users.feature:6 # Scenario: User List 

1 scenario (1 failed) 
4 steps (4 skipped) 
0m0.029s 

Il semble supprimer l'erreur. Je me attendais quelque chose comme:

Feature: Manage users 
    In order to understand my user base better 
    As an administrator 
    I want to view a list of users 

    Scenario: User List 
    Given I have users named George, Mary 
     uninitialized constant User (NameError) 
     ./features/step_definitions/user_steps.rb:3 
     ./features/step_definitions/user_steps.rb:2:in '/^I have users named (.*)$/' 
     features/manage_users.feature:7:in 'Given I have users named George, Mary' 

Quelqu'un sait comment obtenir le concombre pour afficher les erreurs en entier?

--backtrace, --verbose, -b et --trace ne fonctionnent pas; Je vois toujours F----F et le scénario défaillant est listé, mais je m'attends toujours à quelque chose comme description sur la ligne "NameError". Est-ce une caractéristique d'une ancienne version de concombre? (J'utilise screencasts pour commencer à utiliser le concombre.)

Répondre

12

en cours d'exécution avec le drapeau -b devrait vous donner un retour de trace

cucumber features/manage_users.feature -b 

EDIT:

De plus, vous pouvez utiliser la notation complète de --backtrace . Si vous exécutez via rake, exécutez avec le drapeau --trace

pour obtenir la sortie complète, vous pouvez utiliser le drapeau --format. J'utilise généralement --format pretty pour obtenir une promenade ligne par ligne.

à partir de la sortie --help.

-f, --format FORMAT    How to format features (Default: pretty). Available formats: 
            debug  : For developing formatters - prints the calls made to the listeners. 
            html  : Generates a nice looking HTML report. 
            json  : Prints the feature as JSON 
            json_pretty : Prints the feature as pretty JSON 
            junit  : Generates a report similar to Ant+JUnit. 
            pdf   : Generates a PDF report. You need to have the 
               prawn gem installed. Will pick up logo from 
               features/support/logo.png or 
               features/support/logo.jpg if present. 
            pretty  : Prints the feature as is - in colours. 
            progress : Prints one character per scenario. 
            rerun  : Prints failing files with line numbers. 
            stepdefs : Prints All step definitions with their locations. Same as 
               the usage formatter, except that steps are not printed. 
            tag_cloud : Prints a tag cloud of tag usage. 
            usage  : Prints where step definitions are used. 
               The slowest step definitions (with duration) are 
               listed first. If --dry-run is used the duration 
               is not shown, and step definitions are sorted by 
               filename instead. 
           Use --format rerun --out features.txt to write out failing 
           features. You can rerun them with cucumber @rerun.txt. 
           FORMAT can also be the fully qualified class name of 
           your own custom formatter. If the class isn't loaded, 
           Cucumber will attempt to require a file with a relative 
           file name that is the underscore name of the class name. 
           Example: --format Foo::BarZap -> Cucumber will look for 
           foo/bar_zap.rb. You can place the file with this relative 
           path underneath your features/support directory or anywhere 
           on Ruby's LOAD_PATH, for example in a Ruby gem. 
+0

Hmm, ça ne me donne toujours pas le plein bt. J'ai la même sortie ... – user5243421

+0

try '--backtrace' et' --verbose' –

+0

Les deux me donnent des informations supplémentaires, cependant les informations les plus utiles (la ligne "constante non initialisée User (NameError)") s'affichent toujours. – user5243421

0

Si votre application est une application Rails, vous pouvez utiliser le @ permettent de sauvetage tag pour le scénario d'intérêts, vos rails test_log présentiez plus de détails sur l'endroit où dans votre application l'erreur a été soulevée à l'origine . A partir de la ligne de commande, vous pouvez rapidement regarder la fin du journal de test avec tail -n200 log/test_log.rb (ajuster le nombre de lignes pour voir la partie d'intérêt).

Questions connexes