----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.gem5.org/r/3461/#review8284 -----------------------------------------------------------
Ship it! Thanks for the updates. LGTM. If you're willing, I still think it would be good to add comments about what might need to be changed in these files in order to add new tests. - Joel Hestness On May 3, 2016, 5:44 p.m., Andreas Sandberg wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.gem5.org/r/3461/ > ----------------------------------------------------------- > > (Updated May 3, 2016, 5:44 p.m.) > > > Review request for Default. > > > Repository: gem5 > > > Description > ------- > > Changeset 11472:23a195434229 > --------------------------- > tests: Add test infrastructure as a Python module > > Implement gem5's test infrastructure as a Python module and a run > script that can be used without scons. The new implementation has > several features that were lacking from the previous test > infrastructure such as support for multiple output formats, automatic > runtime tracking, and better support for being run in a cluster > environment. > > Tests consist of one or more steps (TestUnit). Units are run in two > stages, the first a run stage and then a verify stage. Units in the > verify stage are automatically skipped if any unit run stage wasn't > run. The library currently contains TestUnit implementations that run > gem5, diff stat files, and diff output files. > > Existing tests are implemented by the ClassicTest class and "just > work". New tests can that don't rely on the old "run gem5 once and > diff output" strategy can be implemented by subclassing the Test base > class or ClassicTest. > > Test results can be output in multiple formats. The module currently > supports JUnit, text (short and verbose), and Python's pickle > format. JUnit output allows CI systems to automatically get more > information about test failures. The pickled output contains all state > necessary to reconstruct a tests results object and is mainly intended > for the build system and CI systems. > > Since many JUnit parsers parsers assume that test suite names look > like Java package names. We currently output path-like names with > slashes separating components. Test names are translated according to > these rules: > > * '.' -> '-" > * '/' -> '.' > > The test tool, tests.py, supports the following features: > > * Test listing. Example: ./tests.py list arm/quick > > * Running tests. Example: > ./tests.py run -o output.pickle --format pickle \ > ../build/ARM/gem5.opt \ > quick/se/00.hello/arm/linux/simple-timing > > * Displaying pickled results. Example: > ./tests.py show --format summary *.pickle > > Change-Id: I527164bd791237aacfc65e7d7c0b67b695c5d17c > Signed-off-by: Andreas Sandberg <[email protected]> > Reviewed-by: Curtis Dunham <[email protected]> > > > Diffs > ----- > > tests/testing/__init__.py PRE-CREATION > tests/testing/helpers.py PRE-CREATION > tests/testing/results.py PRE-CREATION > tests/testing/tests.py PRE-CREATION > tests/testing/units.py PRE-CREATION > tests/tests.py PRE-CREATION > > Diff: http://reviews.gem5.org/r/3461/diff/ > > > Testing > ------- > > > Thanks, > > Andreas Sandberg > > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
