From 7f99dd9c5b33999bfbd0bacb7438193816aec5b5 Mon Sep 17 00:00:00 2001 From: Victor Sergeyev Date: Tue, 18 Jun 2013 12:29:58 +0300 Subject: Replace nosetests with testr in tox.ini. Config tox.ini updated to run testr instead of nosetests. File test-requirements.txt modified respectively. Config .testr.conf added. Testr allows for more flexible testing, more consistent use of the unittest protocol and, most importantly, faster testing via parallelism. Part of blueprint run-tests-script. Change-Id: Iba847d430a18458a1a68e6ef07541d29c0c01c64 --- .testr.conf | 9 +++++++++ test-requirements.txt | 8 ++------ tox.ini | 16 +++++++--------- 3 files changed, 18 insertions(+), 15 deletions(-) create mode 100644 .testr.conf diff --git a/.testr.conf b/.testr.conf new file mode 100644 index 0000000..d54ffb8 --- /dev/null +++ b/.testr.conf @@ -0,0 +1,9 @@ +[DEFAULT] +TESTS_PATH=./test +test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \ + OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \ + OS_TEST_TIMEOUT=${OS_TEST_TIMEOUT:-60} \ + ${PYTHON:-python} -m subunit.run discover -t ./ $TESTS_PATH $LISTOPT $IDOPTION + +test_id_option=--load-list $IDFILE +test_list_option=--list diff --git a/test-requirements.txt b/test-requirements.txt index a19b4af..7ffabfe 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,15 +1,11 @@ coverage +discover fixtures>=0.3.12 flake8==2.0 hacking>=0.5.3,<0.6 mock mox==0.5.3 mysql-python -nose -nose-exclude -nosexcover -openstack.nose_plugin -nosehtmloutput pep8==1.4.5 pyflakes==0.7.2 pylint @@ -17,5 +13,5 @@ pyzmq==2.2.0.1 redis setuptools-git>=0.4 sphinx +testrepository>=0.0.13 testtools>=0.9.22 -webtest diff --git a/tox.ini b/tox.ini index 88ee6d1..bb4292e 100644 --- a/tox.ini +++ b/tox.ini @@ -2,18 +2,14 @@ envlist = py26,py27,py33,pep8,pylint [testenv] +sitepackages = False setenv = VIRTUAL_ENV={envdir} - NOSE_WITH_OPENSTACK=1 - NOSE_OPENSTACK_COLOR=1 - NOSE_OPENSTACK_RED=0.05 - NOSE_OPENSTACK_YELLOW=0.025 - NOSE_OPENSTACK_SHOW_ELAPSED=1 - NOSE_OPENSTACK_STDOUT=1 deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = python tools/patch_tox_venv.py - nosetests --with-doctest --exclude-dir=tests/testmods {posargs} + # due to dependencies between tests (bug 1192207) we use `--concurrency=1` option + python setup.py testr --slowest --testr-args='--subunit --concurrency=1 {posargs}' [flake8] show-source = True @@ -21,7 +17,7 @@ ignore = H202,H302,H304 exclude = .venv,.tox,dist,doc,*.egg,.update-venv [testenv:pep8] -commands = flake8 +commands = flake8 {posargs} [testenv:pylint] deps = pylint>=0.26.0 @@ -30,7 +26,9 @@ commands = python ./tools/lint.py ./openstack [testenv:cover] setenv = VIRTUAL_ENV={envdir} - NOSE_WITH_COVERAGE=1 +commands = + python tools/patch_tox_venv.py + python setup.py testr --coverage --testr-args='{posargs}' [testenv:venv] commands = {posargs} -- cgit