Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^4: Does anybody write tests first?

by andreas1234567 (Vicar)
on Feb 23, 2008 at 20:46 UTC ( #669766=note: print w/replies, xml ) Need Help??


in reply to Re^3: Does anybody write tests first?
in thread Does anybody write tests first?

a simple bloody line number.
Test and line number are not mutually exclusive.
$ cat 669457.t use strict; use warnings; use Test::More; BEGIN { plan tests => 1; } cmp_ok(1, q{==}, 2, q{Expect 1==2}); __END__ $ prove 669457.t 669457....NOK 1/1 # Failed test 'Expect 1==2' # at 669457.t line 5. # got: 1 # expected: 2 # Looks like you failed 1 test of 1. 669457....dubious + Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 1 Failed 1/1 tests, 0.00% okay Failed Test Stat Wstat Total Fail List of Failed ---------------------------------------------------------------------- +--------- 669457.t 1 256 1 1 1 Failed 1/1 test scripts. 1/1 subtests failed. Files=1, Tests=1, 0 wallclock secs ( 0.03 cusr + 0.00 csys = 0.03 C +PU) Failed 1/1 test programs. 1/1 subtests failed. $
--
Andreas

Replies are listed 'Best First'.
Re^5: Does anybody write tests first?
by BrowserUk (Pope) on Feb 23, 2008 at 22:17 UTC

    All of that to get a line number that perl gives you for free?

    And, you have had to re-run the failing test file using prove (which seems to be a different version to that I have?) instead of the make test.

    And how am I meant to get my editor to pick the line number out of all the rest of that redundant crap?

    16 lines of ouput for 1 that is useful. A simple die unless 1 == 2; achieves the same thing without all the redundancy. And if it's located in the code being tested, the line number will lead directly the the source file that needs fixing instead of a test file that I then have to manually relate to the appropriate source file.

    And what happens when the test calls a function, that calls a function in another module, that fails. Do you get traceback?

    It's just layer upon layer of complexity, taking you further and further away from the real code, for the sake of producing a set of meaningless statistics that nobody cares about.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://669766]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (12)
As of 2019-10-21 14:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?