[Openstack] Issue in running unit test with Neutron
Henry Gessau
gessau at cisco.com
Tue Apr 29 14:11:49 UTC 2014
Neutron uses tox as the defacto standard method for running unit tests. If
you don't have tox you install it like this:
sudo pip install -U tox==1.6.1
The version locking is required because of some incompatibility with newer
versions. (The incompatibility may be fixed, but I am still using 1.6.1.)
To run unit tests:
# all neutron unit tests (takes a very long time)
tox -e py27
# just the tests in test_l3_agent.py
tox -e py27 neutron.tests.unit.test_l3_agent
Using run_test.sh is intended to work but if there are problems with it they
are sometimes discovered late because fewer people use it. That said, I just
ran the following and had no problems:
./run_tests.sh neutron.tests.unit.ml2.test_ml2_plugin
However, before this I had already run tox, which create a virtual
environment which run_tests.sh seems to pick up.
If you want to discuss more details of neutron unit tests feel free to post
your questions to the openstack-dev mailing list with [neutron] in the subject.
On Tue, Apr 29, at 8:57 am Romil Gupta (romilgupta19 at gmail.com) wrote:
> Hi Guys ,
>
> Is this the expected output of run_tests.sh for ml2 :
>
> /romil at workspace:~/repos/openstack-neutron$ ./run_tests.sh -d
> neutron.tests.unit.ml2.test_ml2_plugin/
> /No virtual environment found...create one? (Y/n) n/
> /Tests running.../
> /2014-04-29 13:16:34,420 INFO [neutron.manager] Loading core plugin:
> neutron.plugins.ml2.plugin.Ml2Plugin/
> /2014-04-29 13:16:34,420 INFO [neutron.plugins.ml2.managers] Configured
> type driver names: ['local', 'flat', 'vlan', 'gre', 'vxlan']/
> /2014-04-29 13:16:34,421 INFO [neutron.plugins.ml2.managers] Loaded type
> driver names: []/
> /2014-04-29 13:16:34,421 INFO [neutron.plugins.ml2.managers] Registered
> types: []/
> /2014-04-29 13:16:34,421 ERROR [neutron.plugins.ml2.managers] No type
> driver for tenant network_type: local. Service terminated!/
> /
> /
> /Ran 1 test in 0.226s/
> /OK/
> /No type driver for tenant network_type: local. Service terminated!/
>
>
>
> On Mon, Apr 28, 2014 at 3:26 PM, Romil Gupta <romilgupta19 at gmail.com
> <mailto:romilgupta19 at gmail.com>> wrote:
>
> I also tried running unit test with run_test.sh and getting the
> following error :
>
> /root at romil-workspace:~/neutron-openstack# ./run_tests.sh -d -N
> neutron.tests.unit.test_l3_agent/
> /Traceback (most recent call last):/
> / File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main/
> / "__main__", fname, loader, pkg_name)/
> / File "/usr/lib/python2.7/runpy.py", line 72, in _run_code/
> / exec code in run_globals/
> / File "/usr/local/lib/python2.7/dist-packages/testtools/run.py", line
> 399, in <module>/
> / main(sys.argv, sys.stdout)/
> / File "/usr/local/lib/python2.7/dist-packages/testtools/run.py", line
> 396, in main/
> / stdout=stdout)/
> / File "/usr/local/lib/python2.7/dist-packages/testtools/run.py", line
> 206, in __init__/
> / self.parseArgs(argv)/
> / File "/usr/local/lib/python2.7/dist-packages/testtools/run.py", line
> 283, in parseArgs/
> / self.createTests()/
> / File "/usr/local/lib/python2.7/dist-packages/testtools/run.py", line
> 292, in createTests/
> / self.module)/
> / File "/usr/lib/python2.7/unittest/loader.py", line 128, in
> loadTestsFromNames/
> / suites = [self.loadTestsFromName(name, module) for name in names]/
> / File "/usr/lib/python2.7/unittest/loader.py", line 100, in
> loadTestsFromName/
> / parent, obj = obj, getattr(obj, part)/
> /AttributeError: 'module' object has no attribute 'test_l3_agent'/
> /
> /
>
> Need help ....
>
>
> On Mon, Apr 28, 2014 at 3:09 PM, Romil Gupta <romilgupta19 at gmail.com
> <mailto:romilgupta19 at gmail.com>> wrote:
>
> Hi Guys,
>
> I am facing issue in running unit test with nose in neutron.
>
> /root at romil-workspace:~/neutron-openstack/neutron/tests/unit/ml2#
> nosetests test_ml2_plugin.py/
> /E/
> /======================================================================/
> /ERROR: Failure: ImportError (cannot import name
> server_external_events)/
> /----------------------------------------------------------------------/
> /Traceback (most recent call last):/
> / File "/usr/local/lib/python2.7/dist-packages/nose/loader.py",
> line 413, in loadTestsFromName/
> / addr.filename, addr.module)/
> / File "/usr/local/lib/python2.7/dist-packages/nose/importer.py",
> line 47, in importFromPath/
> / return self.importFromDir(dir_path, fqname)/
> / File "/usr/local/lib/python2.7/dist-packages/nose/importer.py",
> line 94, in importFromDir/
> / mod = load_module(part_fqname, fh, filename, desc)/
> / File
> "/root/neutron-openstack/neutron/tests/unit/ml2/test_ml2_plugin.py",
> line 29, in <module>/
> / from neutron.plugins.ml2 import plugin as ml2_plugin/
> / File "/root/neutron-openstack/neutron/plugins/ml2/plugin.py",
> line 27, in <module>/
> / from neutron.db import agentschedulers_db/
> / File "/root/neutron-openstack/neutron/db/agentschedulers_db.py",
> line 23, in <module>/
> / from neutron.db import agents_db/
> / File "/root/neutron-openstack/neutron/db/agents_db.py", line 24,
> in <module>/
> / from neutron.extensions import agent as ext_agent/
> / File "/root/neutron-openstack/neutron/extensions/agent.py", line
> 20, in <module>/
> / from neutron.api.v2 import base/
> / File "/root/neutron-openstack/neutron/api/v2/base.py", line 30,
> in <module>/
> / from neutron.notifiers import nova/
> / File "/root/neutron-openstack/neutron/notifiers/nova.py", line
> 19, in <module>/
> / from novaclient.v1_1.contrib import server_external_events/
> /ImportError: cannot import name server_external_events/
> /
> /
> /----------------------------------------------------------------------/
> /Ran 1 test in 0.001s/
> /
> /
> /FAILED (errors=1)/
>
>
> Please help me to fix this issue.
>
> Thanks in Advance for the help !
>
> --
> *Regards,*
> *Romil
> *
>
>
>
>
> --
> *Regards,*
> *Romil
> *
>
>
>
>
> --
> *Regards,*
> *Romil
> *
>
>
> _______________________________________________
> Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
> Post to : openstack at lists.openstack.org
> Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>
More information about the Openstack
mailing list