openstack单元测试

一 各个组件自己负责

二 Nose
单元测试框架

三 Tox
自动化打包、测试和发布工具
多环境测试,py26,py28,py32
早些时候用run_test.sh,现在推荐用tox

四 实战
0 进入nova源码安装目录
[stack@localhost nova]$ pwd
/opt/stack/nova
[stack@localhost nova]$ git branch
* stable/ocata
1 首先安装openstack开发环境依赖包
[stack@localhost nova]$ sudo yum install python-devel openssl-devel python-pip git gcc libxslt-devel mysql-devel postgresql-devel libffi-devel libvirt-devel graphviz sqlite-devel
2 用pip安装tox工具
[root@localhost ~]# sudo pip install tox
3 检出nova源代码
已经检出到了/opt/stack/nova目录下
4 运行nova的单元测试,第一次运行比较慢
[stack@localhost nova]$ tox -e pep8
pep8 develop-inst-noop: /opt/stack/nova
pep8 installed: alabaster==0.7.9,amqp==1.4.9,anyjson==0.3.3,appdirs==1.4.3,Babel==2.3.4,bandit==1.4.0,cachetools==2.0.0,cffi==1.9.1,cliff==2.4.0,cmd2==0.6.9,colorama==0.3.7,contextlib2==0.5.4,coverage==4.3.4,cryptography==1.7.1,ddt==1.1.1,debtcollector==1.11.0,decorator==4.0.11,docutils==0.12,dogpile.cache==0.6.2,dulwich==0.16.3,enum34==1.1.6,eventlet==0.19.0,extras==1.0.0,fasteners==0.14.1,fixtures==3.0.0,flake8==2.2.4,funcsigs==1.0.2,functools32==3.2.3.post2,futures==3.0.5,futurist==0.21.1,gabbi==1.31.0,gitdb2==2.0.0,GitPython==2.1.1,greenlet==0.4.11,hacking==0.10.3,httplib2==0.9.2,idna==2.2,ipaddress==1.0.18,iso8601==0.1.11,Jinja2==2.8.1,jsonpatch==1.15,jsonpath-rw==1.4.0,jsonpath-rw-ext==1.0.0,jsonpointer==1.10,jsonschema==2.5.1,keystoneauth1==2.18.0,kombu==3.0.37,linecache2==1.0.0,lxml==3.7.2,MarkupSafe==0.23,mccabe==0.2.1,mock==2.0.0,monotonic==1.2,mox3==0.20.0,msgpack-python==0.4.8,netaddr==0.7.19,netifaces==0.10.5,openstackdocstheme==1.6.1,openstacksdk==0.9.13,os-api-ref==1.2.0,os-client-config==1.26.0,os-testr==0.8.0,osc-lib==1.3.0,oslo.concurrency==3.18.1,oslo.config==3.22.0,oslo.context==2.12.2,oslo.i18n==3.12.0,oslo.log==3.20.1,oslo.messaging==5.17.3,oslo.middleware==3.23.2,oslo.serialization==2.16.1,oslo.service==1.19.1,oslo.utils==3.22.2,oslo.vmware==2.17.1,oslosphinx==4.10.1,oslotest==2.13.1,osprofiler==1.5.0,paramiko==2.1.1,Paste==2.0.3,PasteDeploy==1.5.2,pbr==1.10.0,pep8==1.5.7,pika==0.10.0,pika-pool==0.1.3,ply==3.9,positional==1.1.1,prettytable==0.7.2,psycopg2==2.6.2,py==1.4.32,pyasn1==0.1.9,pycparser==2.17,pyflakes==0.8.1,Pygments==2.2.0,pyinotify==0.9.6,PyMySQL==0.7.9,pyparsing==2.1.10,pytest==3.0.6,python-barbicanclient==4.2.0,python-cinderclient==1.11.0,python-dateutil==2.6.0,python-glanceclient==2.6.0,python-ironicclient==1.11.2,python-keystoneclient==3.10.0,python-mimeparse==1.6.0,python-novaclient==7.1.2,python-openstackclient==3.8.1,python-subunit==1.2.0,pytz==2016.10,PyYAML==3.12,reno==2.2.1,repoze.lru==0.6,requests==2.12.5,requests-mock==1.2.0,requestsexceptions==1.1.3,rfc3986==0.4.1,Routes==2.4.1,simplejson==3.10.0,six==1.10.0,smmap2==2.0.1,snowballstemmer==1.2.1,Sphinx==1.3.6,sphinx-rtd-theme==0.1.9,statsd==3.2.1,stevedore==1.20.1,suds-jurko==0.6,tempest-lib==1.0.0,tenacity==3.7.1,testrepository==0.0.20,testresources==2.0.1,testscenarios==0.5.0,testtools==2.2.0,traceback2==1.4.0,unicodecsv==0.14.1,unittest2==1.1.0,urllib3==1.20,warlock==1.2.0,WebOb==1.6.3,wrapt==1.10.8,wsgi-intercept==1.4.1
pep8 runtests: PYTHONHASHSEED='2269684210'
pep8 runtests: commands[0] | bash tools/flake8wrap.sh
Running flake8 on all files
pep8 runtests: commands[1] | bash -c ! find doc/ -type f -name *.json | xargs -t -n1 python -m json.tool 2>&1 > /dev/null | grep -B1 -v ^python
______________________________________________________________ summary ______________________________________________________________
  pep8: commands succeeded
  congratulations :)



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值