Come posso importare le funzioni di supporto a file di test senza creare pacchetti nella directory test
?
Contesto
Mi piacerebbe creare una funzione di test di supporto che posso importare in diversi test. Di ', qualcosa di simile:
# In common_file.py
def assert_a_general_property_between(x, y):
# test a specific relationship between x and y
assert ...
# In test/my_test.py
def test_something_with(x):
some_value = some_function_of_(x)
assert_a_general_property_between(x, some_value)
Usare Python 3.5, con py.test 2.8.2
"soluzione" Current
Attualmente sto facendo questo tramite l'importazione di un modulo all'interno della directory test
del mio progetto (che ora è un pacchetto), ma mi piacerebbe farlo con qualche altro meccanismo se possibile (in modo che la mia directory test
non abbia pacchetti ma solo test e i test possano essere eseguiti su una versione installata del pacchetto, come raccomandato here in the py.test documentation on good practices).
Sembra pazzesco che pytest scoragga i file '__init __. Py', ma allo stesso tempo non fornisce alternative alla condivisione delle funzioni di supporto tra i test. I miei capelli stanno diventando grigi su questo. – qff