2016-06-30 21 views
0

Tox lief vor ein paar Wochen gut, aber ich bin zurück zu einem Projekt, das tox verwendet, um die Tests auszuführen, und jetzt dauert es immer 30 Sekunden zu laufen. Ich dachte, es könnte ein Problem mit Änderungen an einem Projekt sein, aber ich habe in anderen Projekten Tox getestet (sogar ein Hallo Welttest) und sie alle 30 Sekunden dauern zu laufen.Tox dauert immer 30 Sekunden

$ time tox 
GLOB sdist-make: /private/tmp/dependency_manager/setup.py 
py27 inst-nodeps: /private/tmp/dependency_manager/.tox/dist/dependencyManager-1.3.6.zip 
py27 installed: boto==2.41.0,boto3==1.3.1,botocore==1.4.33,dependencyManager==1.3.6,docutils==0.12,funcsigs==1.0.2,futures==3.0.5,jmespath==0.9.0,mock==2.0.0,nose2==0.6.5,pbr==1.10.0,python-dateutil==2.5.3,six==1.10.0,troposphere==1.6.0 
py27 runtests: PYTHONHASHSEED='3107006541' 
py27 runtests: commands[0] | nose2 
/private/tmp/dependency_manager/.tox/py27/lib/python2.7/site-packages/troposphere/dynamodb.py:10: UserWarning: This module is outdated and will be replaced with troposphere.dynamodb2. Please see the README for instructions on how to prepare for this change. 
    warnings.warn("This module is outdated and will be replaced with " 
..................... 
---------------------------------------------------------------------- 
Ran 21 tests in 0.020s 

OK 
_____________________________________________________________________________________________ summary ______________________________________________________________________________________________ 
    py27: commands succeeded 
    congratulations :) 
tox 1,67s user 0,43s system 6% cpu 32,192 total 

Jetzt ein ganz anderes Projekt.

$ time tox 
py27 recreate: /Users/jose.armesto/dev/dredd/.tox/py27 
py27 installdeps: nose, mock, coverage >= 3.3 
py27 installed: coverage==4.1,funcsigs==1.0.2,mock==2.0.0,nose==1.3.7,pbr==1.10.0,six==1.10.0 
py27 runtests: PYTHONHASHSEED='1261821084' 
py27 runtests: commands[0] | nosetests --with-coverage --cover-branches 
.... 
Name     Stmts Miss Branch BrPart Cover 
------------------------------------------------------- 
funcsigs.py    432 357 194  0 12% 
funcsigs/version.py  1  0  0  0 100% 
mock.py     4  0  0  0 100% 
mock/mock.py   1373 987 578  44 23% 
pbr.py     0  0  0  0 100% 
pbr/version.py   218 116  66  16 42% 
six.py     444 218 134  21 46% 
dredd.py     0  0  0  0 100% 
dredd/discovery.py  0  0  0  0 100% 
dredd/dredd.py   28  0  18  1 98% 
dredd/instance.py   9  1  0  0 89% 
------------------------------------------------------- 
TOTAL     2509 1679 990  82 28% 
---------------------------------------------------------------------- 
Ran 4 tests in 0.026s 

OK 
_____________________________________________________________________________________________ summary ______________________________________________________________________________________________ 
    py27: commands succeeded 
    congratulations :) 
tox 3,67s user 0,87s system 12% cpu 37,636 total 

Es ist wie etwas ist, Timeouts von 30 Sekunden, und dann in der Regel es läuft nur die Tests. Ich habe versucht, ls -lah als Befehl und Profil tox zu verwenden, und ich habe diese Ergebnisse http://pastebin.com/EtQh3Xhq.

Ich laufe auf OSX Yosemite 10.10.5 Python und tox Versionen

$ python --version 
Python 2.7.10 

$ tox --version 
2.3.1 imported from /Library/Python/2.7/site-packages/tox/__init__.pyc 

Ich habe Projekte versucht, mit und ohne setup.py, mit mehr oder weniger Umgebungen, und ich bekomme immer die gleiche langsam Zeit . Wer weiß was vor sich geht und wie man es repariert?

Antwort

1

Durch das Entfernen alter Pakete, die in $ HOME/.tox installiert wurden, wurde das Problem behoben. Es scheint, als ob die 30 Sekunden auf Boto-Timeout zurückzuführen sind, und einige dieser Pakete verwendeten Boto. Ich weiß nicht, warum das passiert ist.