DEJAGNU-REPORT-CARD(1) General Commands Manual (urm) DEJAGNU-REPORT-CARD(1)

dejagnu report cardsummarize results from testing multiple tools

dejagnu report card [⟨option⟩ | ⟨tool⟩ | ⟨file⟩] ...

The dejagnu report card command displays results from testing multiple tools in a tabular format. The produced table lists, for each tool (and if multiple passes were run, each pass) the number of tests passed, failed, unsupported, unresolved, and untested. Tests that are expected to fail are counted in separate columns from tests expected to pass, but "known" failures and "expected" failures are summarized together. If a test generated warnings or errors, a tag ‘!W!’ or ‘!E!’ is appended at the end of the relevant line.

Aside from options, the argument list may include tool or file names. The dejagnu report card command prefers to read DejaGnu summary files and will translate names accordingly:

*.sum
Used as-is.
*.log
Rewritten to *.sum with the same stem.
*.
The string sum is appended to select a summary file. This processing is done for convenience when using Readline file name completion in a shell, which will complete to the dot.
*
Taken as a tool name; .sum is appended.

, --verbose
Emit additional output describing the operation of dejagnu report card itself.

The dejagnu report card command produces its output by reading the summary files produced by DejaGnu and counting "PASS", "FAIL", etc.

If no names are given as arguments, all files matching *.sum in the current directory are read.

$ dejagnu report card
             __________________________________________________
            /    PASS   FAIL  ?PASS  ?FAIL  UNSUP  UNRES UNTEST
            |--------------------------------------------------
  launcher  |      52      0      0      0      0      0      0
libdejagnu  |       5      0      0      0      0      0      0
   runtest  |     135      0      0      0      0      0      0
            |--------------------------------------------------
            |     192      0      0      0      0      0      0
            \__________________________________________________

Three tools were tested, with a total of 192 tests, all expected to pass. In this example, all tests did pass, so all other columns are zero. The ‘?PASS’ and ‘?FAIL’ columns count tests known or expected to fail that either unexpectedly passed or failed as expected. The remaining three columns count the exceptional results for unsupported tests, unresolved tests and stub tests that simply declare themselves untested.

$ dejagnu report-card
                    __________________________________________________
                   /    PASS   FAIL  ?PASS  ?FAIL  UNSUP  UNRES UNTEST
                   |--------------------------------------------------
   launcher        |      52      0      0      0      0      0      0
 libdejagnu        |       5      0      0      0      0      0      0
report-card / awk  |      36      0      0      0      0      0      0
report-card / sh   |      36      0      0      0      0      0      0
report-card / tcl  |      36      0      0      0      0      0      0
    runtest        |     135      0      0      0      0      0      0
                   |--------------------------------------------------
              awk  |      36      0      0      0      0      0      0
              sh   |      36      0      0      0      0      0      0
              tcl  |      36      0      0      0      0      0      0
                   |--------------------------------------------------
                   |     300      0      0      0      0      0      0
                   \__________________________________________________

The ‘report-card’ tool has been added, with three passes, one for each implementation. (The shell and Tcl implementations were later dropped to reduce future maintenance burden.) As before, all tests passed as expected. The interesting difference from the previous example is the use of DejaGnu's multipass testing feature and the additional per-pass summary lines added. For this example, only the ‘report-card’ tool uses multipass testing, so each pass total is simply the count of tests for ‘report-card’ instead of a distinct total.

Also note that the command used to invoke dejagnu report card is slightly different here. The dejagnu(1) launcher will also accept multiple words joined with dashes into a single argument. This allows individual words in a command name to be separated with either dashes or spaces on the command line interchangeably.

dejagnu(1) runtest(1)

The full documentation for DejaGnu is maintained as a Texinfo manual. If the info program is properly installed at your site, the command info dejagnu should give you access to the complete manual.

Jacob Bachmeyer

December 31, 2018 GNU