Lorsque je lance des tests localement, tout fonctionne bien, mais après avoir créé le docker et exécuté à l'intérieur du conteneur, je reçois l'erreur suivante.
/usr/local/lib/python3.5/site-packages/_pytest/config.py:325: in _getconftestmodules
return self._path2confmods[path]
E KeyError: local('/apis/db/tests')
Pendant la gestion de l'exception ci-dessus, une autre exception s'est produite :
/usr/local/lib/python3.5/site-packages/_pytest/config.py:356: in _importconftest
return self._conftestpath2mod[conftestpath]
E KeyError: local('/apis/db/tests/conftest.py')
Pendant la gestion de l'exception ci-dessus, une autre exception s'est produite :
/usr/local/lib/python3.5/site-packages/_pytest/config.py:362: in _importconftest
mod = conftestpath.pyimport()
/usr/local/lib/python3.5/site-packages/py/_path/local.py:680: in pyimport
raise self.ImportMismatchError(modname, modfile, self)
_pytest.config.ConftestImportFailure: ImportMismatchError('conftest', '/projects/my_project/db/tests/conftest.py', local('/apis/db/tests/conftest.py'))
/apis - c'est le WORKDIR dans le Dockerfile.
0 votes
Vous avez probablement des problèmes avec les chemins d'importation de python ou avec les liens symboliques ou autres. Qu'est-ce que
/projects/my_project
et qu'est-ce que/apis
? Sont-ils des répertoires ou des liens symboliques? Comment sont-ils liés l'un à l'autre?0 votes
@MarSoft /projets est dans le répertoire principal, et /apis est dans le répertoire principal de docker, au fait j'ai résolu le problème. Merci!