Debug env for tox
Running a test with pdb was difficult because tox captures output and causes pdb prompt to quit. Tips for how to run with debug are provided here: https://wiki.openstack.org/wiki/Testr#Debugging_.28pdb.29_Tests This change puts these commands into a debug env in tox.ini so you can do a command like: tox -e debug pycadf.tests.test_cadf_spec and when it hits your breakpoint you'll get the debug prompt. Change-Id: Ic53a888e4e305d51159d1d6a2f962786a532e089 Co-Authored-By: Brant Knudson <bknudson@us.ibm.com> Closes-Bug: #1350424
This commit is contained in:
parent
c638d043b1
commit
2dc6348c90
@ -68,12 +68,14 @@ run through tox_.
|
||||
|
||||
$ tox -e py27 -- api.v2
|
||||
|
||||
To debug tests (ie. break into pdb debugger), you can use ''venv'' command::
|
||||
To debug tests (ie. break into pdb debugger), you can use ''debug'' tox
|
||||
environment. Here's an example, passing the name of a test since you'll
|
||||
normally only want to run the test that hits your breakpoint::
|
||||
|
||||
$ tox -e venv "python -m unittest discover ceilometer"
|
||||
$ tox -e debug ceilometer.tests.test_bin
|
||||
|
||||
Unfortunately, debugging currently has some limitations:
|
||||
You cannot run a specific test, you have to launch the whole test suite.
|
||||
For reference, the ``debug`` tox environment implements the instructions
|
||||
here: https://wiki.openstack.org/wiki/Testr#Debugging_.28pdb.29_Tests
|
||||
|
||||
.. seealso::
|
||||
|
||||
|
17
tools/debug_helper.sh
Executable file
17
tools/debug_helper.sh
Executable file
@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
|
||||
TMP_DIR=`mktemp -d` || exit 1
|
||||
trap "rm -rf $TMP_DIR" EXIT
|
||||
|
||||
ALL_TESTS=$TMP_DIR/all_tests
|
||||
TESTS_TO_RUN=$TMP_DIR/ks_to_run
|
||||
|
||||
python -m testtools.run discover -t ./ ./ceilometer/tests --list > $ALL_TESTS
|
||||
|
||||
if [ "$1" ]; then
|
||||
grep "$1" < $ALL_TESTS > $TESTS_TO_RUN
|
||||
else
|
||||
mv $ALL_TESTS $TESTS_TO_RUN
|
||||
fi
|
||||
|
||||
STANDARD_THREADS=1 python -m testtools.run discover --load-list $TESTS_TO_RUN
|
Loading…
Reference in New Issue
Block a user