Cómo instalar la biblioteca de bases de datos de Python para funcionar con RobotFramework - Problema de API

StackOverflow https://stackoverflow.com/questions/8824270

Pregunta

Estoy en una máquina Windows 7 de 64 bits, usando Python 2.7 y estoy tratando de usar la biblioteca de base de datos de Python en RobotFramework. Anteriormente he usado un archivo de la biblioteca Java, pero ahora quiero usar la biblioteca de Python.

he ido a github y Versión descargada 0.6.

También he instalado un archivo de configuración y mysql-python desde aquí

Sin embargo, cuando intento instalar la biblioteca de la base de datos (usando Python setup.py construir) obtengo el siguiente error:

Traceback (most recent call last):
  File "setup.py", line 25, in <module>
    from DatabaseLibrary import __version__
  File "src\DatabaseLibrary\__init__.py", line 15, in <module>
    from connection_manager import ConnectionManager
  File "src\DatabaseLibrary\connection_manager.py", line 16, in <module>
    from robot.api import logger
ImportError: No module named api

¿Por qué no tengo? robot.api ¿Y cómo lo consigo e instalarlo? ¿O hay una forma más fácil de instalar la biblioteca de la base de datos de Python?

¿Fue útil?

Solución

Parece que la biblioteca de bases de datos utiliza internales de marco de robots, pero no enumera el marco de robots como dependencia. El paquete robot.api se introdujo en RF 2.6, por lo que actualizar/instalar el último marco de robot (desde Páginas de proyectos) debe resolver su problema

Otros consejos

Primero asegúrese de la integridad de su módulo antes de intentar instalar. Para instalar un módulo usando Distutils (setup.py), debe ejecutar este comando como administrador:

python setup.py install

Eso debería ejecutar la configuración e informarle cualquier dependencia faltante.

Alternativamente, puede instalar PIP desde esta ubicación: Página de inicio del proyecto PIP. Su página proporciona instrucciones sobre cómo instalar PIP, es un administrador de paquetes para Python, similar a Pear para PHP, CPAN para Perl o Gem para Ruby. Cuando lo tiene instalado, puede instalar paquetes con este comando:

pip install <module>

El problema era que no tenía la carpeta "API" en la carpeta "Robot" en "Python27 lib Site-Packages", ya que no tenía la última versión de RF. Y Logger es una nueva API de registro para Robot Framework 2.6 desde octubre de 2011. (como se señala) como se señala)

Parecen ser dos soluciones para este problema:

  1. Probado y funcionado pero no recomendado a menos que no desee actualizar RF: editar los 2 archivos "Connection_Manager.py" y "Query.py" en "RobotFramework-Databaselibrary-0.6" para que no haya dependencia del registrador RobotFramework. Esta es una edición fácil y rápida, donde reemplaza el "Robot.api Import Logger" a "Importar registro" y "Logger" a "Registro" ver "http://robotframework.googlecode.com/hg/doc/userguide /RobotFrameWorkUserGuide.html#programmatic-logging-apis "para obtener más detalles.

  2. Reinstale RobotFramework y asegúrese de que se cree la carpeta "API". Esto se recomienda, ya que es el mejor enfoque.

(Agregado como una respuesta como demasiado tiempo para un comentario)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top