nova 單元測試方式

  • 需要安裝的依賴包

$ sudo yum install -y python-devel openssl-devel python-pip git gcc libxslt-devel mysql-devel postgresql-devel libffi-devel libvirt-devel graphviz sqlite-devel libvirt-devel


  • 代碼下載

$ git clone https://github.com/openstack/nova.git


  • 安裝pip

$ sudo yum install -y python-pip


  • 安裝tox

$ sudo pip install tox


  • tox配置文件

tox配置文件爲tox.ini

目前可以看到在tox的session裏面的envlist是支持的env列表

[tox]
envlist = py27,pep8,pip-missing-reqs


目前一般用py27來執行測試。

  • tox生成virtualenv

$ tox -e py27


  • 這裏有可能由於內存不足導致命令執行失敗,退出報gcc failed exited with status 4, 在dmesg上可以看到Out of memory。 要留足夠的內存。我曾經一百多兆近200兆的free也報out of memory。

  • libvirt需要開發包即 libvirt-devel rpm包,這個在doc裏面後面才提交的patch纔有寫


  • tox執行unit test

執行測試

$ tox -e py27 nova.tests.unit.scheduler


測試nova/tests/unit/scheduler目錄下得測試案例

  py27: commands succeeded
  congratulations :)

這樣表示測試案例全通過


  • 修改測例

可以通過修改相關文件來增刪改查那些測例。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章