Construcción del marco del robot localmente + problemas encontrados por Meizu
Principalmente para hacer un resumen para mí y para orientar a los principiantes, primero les daré algunas ideas y, si hay alguna, ¡no dude en destrozarlas!
Estoy usando Python 2.7.18
Comience a configurar el entorno:
1La instalación de Python no se presentará en detalle, en resumen, el siguiente paso es suficiente
2 instale varias bibliotecas necesarias para robotframework
instalación en línea de wxPython pip install ? wxPython==4.0.6
Si está instalado, puede usarlo localmente. 6
Si la instalación en línea es demasiado lenta, puede considerar la instalación sin conexión
(¿Sitio web oficial? https://wxpython.org/pages/downloads/ )
https://pypi.org/project/robotframework/
Marco de robot: pip install robotframework==3.1.2
Marco de robot-ride: pip install robotframework-ride== 1.7.3.1
pip?install?requests==2.24.0
pip?install?robotframework-requests==0.7.0
pip?install? robotframework-jsonlibrary
pip?install?robotframework- jsonschemalibrary==1.0
Como utilicé el instalador fuera de línea, utilicé easy_install allure-robotframewdork-2.8.16.tar.gz p>
El resultado es que el instalador se completa con el siguiente error:
Se requieren los siguientes cambios:
Si usa ppi, puede instalar robotframework jsonschemalibrary==1.0
Esta es la primera vez que se necesita un cambio.
Si estás usando python2
Modifica desde itertools import zip_longest en allure_listener.py a from itertools import izip_longest (¡¡recuerda modificarlo al mismo tiempo!!). )
Si estás usando python3
Debes cambiar de itertools import izip_longest en allure_listener.py a from itertools import zip_longest (¡¡dos cambios otra vez!!! !! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! )
La clave es:?
Trampa 1:
Debido a que estoy usando la instalación fuera de línea, la idea general es ir primero al entorno de instalación de Python para encuentre esto El archivo no se encontró,
Solución:
Como no se puede encontrar, modifíquelo en el paquete zip.
Método específico:
Descomprima allure-robotframewdork-2.8.16.tar.gz, que contiene el archivo allure_listener.py, reemplace zip_longes con izip_longes, recuerde, es *** *, ¿Usar python setup.py para instalar después del reemplazo? ¡La instalación está completa! En cuanto a qué versión usar, creo que no importa
Recordatorio amigable:
t1.robot solo se usa para pruebas simples
Después de instalar software requerido, comience a probar para ver si puede generar un informe
Desde la línea de comando, ejecute ?
robot --listener allure_robotframework -d ./output/robot t1.robot
(¿-d se refiere a la ruta del informe?/output/robot se refiere a la ruta del caso de uso? t1.robot se refiere al caso de uso específico)
Si ejecuta este comando y genera estas dos carpetas, luego Felicitaciones, funcionó
Luego ejecute allure server output/allure ?
en la línea de comando y se abrirá automáticamente en el navegador y verá el informe alto. !!
Se encontró una pequeña trampa 2
No hay datos después de ejecutar, así
Preste atención a si su ruta es correcta si es como la siguiente. Definitivamente está mal, no habrá datos
De hecho:
Aquí viene el punto clave
La razón por la que se puede generar el informe es. porque hay un archivo json, como la imagen a continuación
p>Si se genera el archivo json pero aún no hay datos, preste atención a la ruta donde se encuentra su archivo json
<. p>La ruta donde se encuentra el archivo allure server+json está básicamente bienFinalmente, adjunte mi configuración local y el número de versión correspondiente. Si la versión es demasiado alta, no tendrá éxito
Si la instalas en línea, algunas bibliotecas se instalarán automáticamente, por lo que no No es necesario molestarse en instalarlos
Si aparecen caracteres confusos, solucionelos a tiempo
Vaya a Python\Lib\site-packages\robotide y haga clic en el siguiente enlace para aprender cómo instalarlos. la biblioteca. Cambie el cuadro en la imagen a continuación a mbcs, guarde, salga, reinicie y vuelva a la normalidad
Quería escribir un artículo sobre cómo integrarlo en Jenkins, pero el tiempo es limitado, así que espere el siguiente artículo. Este artículo trata sobre la integración en jenkins
¿Cómo obtener los mejores resultados?