Acabo de terminar de escribir la sección central de un proyecto en el que estoy trabajando y quiero escribir una prueba para ello usando unittest antes de continuar. Soy consciente de que debería haber hecho esto antes, pero cuando comencé no conocía Python, así que ... lo que sea .. lo que sea ..¿Cómo importo un módulo de un directorio principal? (Propósitos de la prueba unitaria)
Lo que me gustaría lograr: tengo un subpaquete del paquete principal que contiene todos los módulos que quiero probar dentro de él. Quiero incluir un subsubpackage llamado 'tests' o algo que luego contenga todos mis casos de prueba, que me gustaría poder agregar a un banco de pruebas desde fuera del paquete para que eventualmente pueda ejecutar toda la prueba de todo el proyecto de una vez.
La estructura es algo como esto:
/projectPackage
/projectPackage/package
/projectPackage/package/\__init__.py (empty)
/projectPackage/package/someModule.py
/projectPackage/package/... (more modules)
/projectPackage/package/testing.py (runs all the tests in /tests/)
/projectPackage/package/tests
/projectPackage/package/tests/\__init__.py (empty)
/projectPackage/package/tests/someModuleTests.py
problema que estoy teniendo:
someModuleTests tiene que importar la someModule del paquete principal para que pueda probar sus métodos. Esto no parece funcionar. Tengo varios errores como:
Attempted relative import beyond toplevel package
De todos modos, espero que es sólo porque soy un novato Python! Tengo mis propias ideas sobre cómo voy a hacerlo para este proyecto, porque, por supuesto, cada una es diferente, pero también se agradece cualquier consejo general sobre la estructuración de proyectos Python medianos y grandes.
bien grande, gracias. Te recomendaría, pero no tengo suficiente reputación: S –
No hay problema, podrías elegir mi pasado como la respuesta si te gusta lo suficiente, creo :-) – ikanobori