[Ns-developers] Ns-3 Regression Testing
craigdo@ee.washington.edu
craigdo at ee.washington.edu
Tue Apr 1 10:11:01 PDT 2008
[ ... ]
> The code does not work here because >& is a bash extension,
> while ubuntu
> installs dash as /bin/sh which does not support >& (>& is not POSIX
> compliant). The solution is to replace ">&" with "> /dev/null 2>&1".
I'll make that change.
> Moreover, I don't like the way the regression tests hide the
> diff output
> (diff -q); when something fails, I would usually like to know
> why... diff
> already outputs nothing when there are no differences, so why
> not remove the
> -q? Or maybe diff xxxx | head, to avoid huge trace files completely
> different drowning out output.
The issue is the possibly huge amounts of output as you mention. It's easy
to scroll key information out of your screen buffer. My take was to tell
you that it was broken in a simple, easy to understand way (FAIL
test-module.py), and let you go in and figure out how and why using whatever
tools you thought best.
regarding head, it still prints out a lot of junk (well over a page filled
with text) since each line of ascii trace has hundreds of densely packed
characters in it.
> Finally, when we get Python bindings I think they would make
> writing test
> cases much easier. Right now writing a test means writing in
> C++ and also
> writing a relatively complex python script. I am sure you'll
> agree with me
> when I say that all test scripts share a lot of common
> boilerplate code
> which could be moved to a small python helper module...
I'll most likely end up packaging up the boilerplate before I'm done since
everything we currently have that is suitable for a regression test ended up
looking pretty much identical (I've already enabled this by factoring out
the differences). Before I do much more in that area I want to add in some
other kinds of tests.
-- Craig
More information about the Ns-developers
mailing list