Som v procese migrácie svojho riešenia Google AppEngine z jazyka Python 2.5 na verziu 2.7. Migrácia aplikácií bola pomerne jednoduchá, ale bojujem s jednotkovými testami.
Vo verzii 2.5 som použil funkciu use_library na nastavenie verzie django na 1,2, ale toto už nie je podporované na 2.7. Teraz som v aplikácii app.yaml nastavil predvolenú verziu.
Keď teraz spustím svoje testovacie jednotky, predvolená verzia django sa zmení na 0,96 a nemôžem nastaviť predvolenú verziu 1.2.
Kto vie, ako môžem nastaviť predvolené knižnice pre unittest, aby sa zhodovali s nastaveniami v aplikácii app.yaml?
odpovede:
3 pre odpoveď č. 1Použite nasledujúcu syntax v app.yaml
na nastavenie verzie Django používanej v celom texte:
libraries:
- name: django
version: "1.3"
Viac podrobností o tom, ako nastaviť používanie knižníc tretích strán v Pythone 2.7 tu.
0 pre odpoveď č. 2
app.yaml
konfigurácia sa neuplatňuje pri vykonávaní testov jednotiek s webtestovou aplikáciou a NoseGAE.
use_library
nefunguje ani.
Správnym riešením pre tento prípad je poskytnúť správnu cestu pre python k preferovanej verzii lib, napr. PYTHONPATH=../google_appengine/lib/django-1.5
pri spustení nosových testov.