Prechádzam z najjednoduchšieho rámca pythonu na nosetesty a snažím sa znovu použiť moje unittest.TestCase
s
po cd
do môjho testovacieho balíka som začal nosetests ako je uvedené na ich domovskej stránke:
./test/$ nosetests
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
Prečo musím špecifikovať každý modul, aby mal nos objaviť jeho testy ako v nasledujúcom príklade?
./test/$ nosetests test_all.py
.......
----------------------------------------------------------------------
Ran 7 tests in 0.002s
OK
Tiež spustenie testov jeden priečinok vyššie nezmení nič.
./tests/$ cd ..
./$ nosetests
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
odpovede:
14 pre odpoveď č. 1Vo vašom repo vidím, že aspoň niektoré z nichsúbory sú spustiteľné, takže je to aspoň časť problému. V predvolenom nastavení, nos vyhral "t zbierať tie: to sa snaží vyhnúť spusteniu skriptov, ktoré by mohli urobiť niečo deštruktívne pri importe. Vyskúšajte príznak --exe alebo odstráňte spustiteľný bit z testovacích súborov.
1 pre odpoveď č. 2
Musíte byť v adresári vyššie, ak chcete nos spustiť všetky testy v tomto balíku.
1 pre odpoveď č. 3
V mojom prípade som na konci testovacích súborov mal nasledujúci riadok:
unittest.main()
Odstránenie zo všetkých mojich testov vyriešilo môj problém.