Děkuji za odpověď, Myslím, že migrace se spouští (alespoň na jednom z počítačů). Protože jinak si nedokážu představit, jak by se do databáze dostaly ty fixtury.
V případě nutnosti tam ty objekty nacpu ručně, přeskočím migrace (--nomigrations)a zrychlím tím start testů. Ale teď jsem zatím ve stádiu: "Chci pochopit, proč to nefunguje". Až přejdu do stádia "Hoří mi termíny", tak to nějak doladím rychle. Na cizí pytest.ini se rád podívám. --Věroš 2016-04-13 11:35 GMT+02:00 starenka . <[email protected]>: > Jestli mas zajem, muzu sem nekam hodit kostru pytest.ini a tox.ini.... > > --- > In Perl you shoot yourself in the foot, but nobody can understand how you > did it. Six months later, neither can you. | print 'aknerats'[::-1] > > 2016-04-13 11:34 GMT+02:00 starenka . <[email protected]>: > >> Leta pouzivam pytest-django a testy mam jak dedeny z TestCase z djanga, >> tak jen funkce ala py.test a zadny problemy nemam. Na jenkinsu testy >> poustim toxem. >> Na pytestu je super to, ze pokud nechces, nemusis stary testy migrovat, >> one je (podobne jako nose) v pohode pusti. Abych se priznal, kdyz potrebuju >> db, tak pouziiju djangovej TestCase,`@pytest.mark.django_db` sem nikdy >> nezkousel. Fixtury teda (pokud je to teda nutny) valim pres django >> masinerii. >> >> Nechapu to co pises o migracich, zadny migrace by se ti pri testovani >> delat nemeli. Db se vytvori z aktualniho modelu... >> >> >> >> --- >> In Perl you shoot yourself in the foot, but nobody can understand how you >> did it. Six months later, neither can you. | print 'aknerats'[::-1] >> >> 2016-04-13 11:26 GMT+02:00 Věroslav Kaplan <[email protected]>: >> >>> Zdravím vespolek, >>> >>> a prosím o nakopnutí. >>> >>> TL;DR: Jaký je doporučený framework pro testování Django aplikací? >>> pytest-django? >>> >>> -- >>> Plná verze: >>> >>> Snažím se zmigrovat jeden Django projekt z Django unit tests na py.test >>> . Mám Django==1.8, pytest-django==2.9.1 a příslušný pytest, testovací >>> databázi mám defaultní sqlite. >>> >>> Program v databázi očekává nějaké objekty/fixtures, které do databáze >>> nahraju v průběhu migrací. Objekty vytvářím pomocí volání RunPython v >>> migracích. >>> >>> Testy spouštím jednak u sebe na vývojářském laptopu a taky na Jenkinsu >>> (CI řešení z minulého století). Když testy na Jenkinsu projdou, tak je >>> Jenkins nahraje projekt na testovací server pro zákazníka. >>> >>> Když spustím testy na laptopu, tak projdou bez problémů. Když spustím >>> testy na Jenkinsu, tak spadnou testy, které očekávají, že v databázi jsou >>> nějaké objekty. >>> >>> Obě testovací prostředí používají stejný test_settings a stejné verze >>> balíčků z pipu. Liší se mi jen verze Pythonu 2.7.10 vs 2.7.5 (Fedora vs >>> CentOS), ale nepředpokládám tam problém. >>> >>> Na co jsem přišel: >>> - Vypadá to, že py.test runner spouští migrace, protože se vytvoří >>> všechny tabulky a sloupce v tabulkách (ale jistě to nevím - tohle se může >>> vytvořit i z popisu modelů). >>> - Vypadá to, že py.test spouští i kód v RunPython - když jsem tam >>> vyhodil výjimku, tak testy spadly na výjimce. >>> - Ale objekty vytvořené pomocí RunPython pak nejsou. >>> >>> Failují jak staré testy odvozené od TestCase, tak nové pytest testy. >>> >>> Setkal se s tím někdo? Jaký je aktuálně doporučený testovací framework >>> pro Django aplikace? >>> >>> Za odpověď děkuji >>> >>> >>> Věroš >>> -- >>> --V.Kaplan >>> >>> -- >>> -- >>> E-mailová skupina [email protected] >>> Správa: http://groups.google.cz/group/django-cs >>> --- >>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny >>> „django-cs“ ve Skupinách Google. >>> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, >>> zašlete e-mail na adresu [email protected]. >>> Chcete-li tuto diskusi zobrazit na webu, navštivte >>> https://groups.google.com/d/msgid/django-cs/CABWwdO-6yb1dLcFGA_W83TGBdxv3MJuTaSms-Gh60Fu944g%3DRA%40mail.gmail.com >>> <https://groups.google.com/d/msgid/django-cs/CABWwdO-6yb1dLcFGA_W83TGBdxv3MJuTaSms-Gh60Fu944g%3DRA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> Další možnosti najdete na https://groups.google.com/d/optout. >>> >> >> > -- > -- > E-mailová skupina [email protected] > Správa: http://groups.google.cz/group/django-cs > --- > Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny > „django-cs“ ve Skupinách Google. > Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, > zašlete e-mail na adresu [email protected]. > Chcete-li tuto diskusi zobrazit na webu, navštivte > https://groups.google.com/d/msgid/django-cs/CA%2B7MNVrBguW66nz9EBE1zFGrf%3DK1KknXLSh5sGkwFcBZ_KzAZQ%40mail.gmail.com > <https://groups.google.com/d/msgid/django-cs/CA%2B7MNVrBguW66nz9EBE1zFGrf%3DK1KknXLSh5sGkwFcBZ_KzAZQ%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > Další možnosti najdete na https://groups.google.com/d/optout. > -- --V.Kaplan -- -- E-mailová skupina [email protected] Správa: http://groups.google.cz/group/django-cs --- Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs ve Skupinách Google. Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete e-mail na adresu [email protected]. Chcete-li zobrazit tuto diskusi na webu, navštivte https://groups.google.com/d/msgid/django-cs/CABWwdO_jwdsC1FJ8EyhdcrpK_rVL4ZdhvTaRU_4sZhSdbo433Q%40mail.gmail.com. Další možnosti najdete na adrese https://groups.google.com/d/optout.
