GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo usamos Linux Test Project para probar y mejorar Linux

El Proyecto de prueba de Linux (LTP) es un conjunto de pruebas integrado de propósito general diseñado para ayudar a las organizaciones que usan y desarrollan Linux a comprender mejor qué cosas funcionan y qué aún necesita funcionar. Se compone de pruebas de regresión y conformidad diseñadas para confirmar el comportamiento del kernel de Linux y glibc. Sus herramientas y conjuntos de pruebas tienen como objetivo verificar el kernel de Linux y los subsistemas relacionados.

En resumen, el Proyecto de prueba de Linux (LTP) tiene como objetivo probar y mejorar Linux. Su objetivo es ofrecer un conjunto de herramientas de prueba automatizadas para Linux y publicar los resultados de las pruebas que ejecutan. Por ejemplo, usamos pruebas LTP en Red Hat Enterprise Linux (RHEL) para mejorar el kernel de Linux y las bibliotecas del sistema.

¿Qué es RHTS-LTP?

LTP tiene un ritmo de desarrollo constante; lanza una nueva versión estable del conjunto de pruebas cada cuatro meses. La rama principal de LTP upstream siempre está en desarrollo. RHEL publica una transmisión menor cada seis meses y proporciona una actualización importante cada tres años. Eso significa que el entorno de producción de RHEL necesita un conjunto de pruebas diverso, seguro, de alta eficiencia y confiable. Por este motivo, Red Hat mantiene una versión interna de LTP llamada Red Hat Test Suite-Linux Test Project (RHTS-LTP).

Comprender el flujo de trabajo entre upstream y Red Hat

RHTS-LTP no funciona de forma aislada. Se basa en lo que proporciona LTP y envía parches de nuevo en sentido ascendente. Desde una perspectiva de ingeniería, este es el flujo de trabajo general:

  1. Elija una versión de paquete estable desde arriba como línea de base
  2. Actualización de nuevos parches de la rama más reciente, que incluye:
    • Actualización de vulnerabilidades y exposiciones comunes (CVE) y casos de prueba de emergencia
    • Corrección de errores para el marco o defecto de prueba
  3. Envíe el parche a upstream para resolver problemas comunes
    • Corrección de errores, nueva prueba de regresión, etc.

Parches de respaldo

El proceso de desarrollo, en términos del proyecto upstream, se ve así:

ltp-completo-20210121 --> ltp-completo-20210524 --> ltp-completo-20210927 --> ltp-completo-siguiente

Solo la versión estable se descarga a RHTS-LTP. Entonces, ltp-full-20210927 junto con sus parches se usa en la prueba interna. Por lo general, los parches que solucionan problemas comunes críticos, errores de regresión de RHEL o el marco de prueba en sí son retroportados.

[ Regístrese en el curso gratuito en línea Descripción general técnica de Red Hat Enterprise Linux para aprender técnicas prácticas básicas para tareas de administración de sistemas y Linux. ]

La versión estable de la fuente de prueba LTP se publica cada cuatro meses. Después de realizar pruebas centralizadas y solucionar problemas con algunas de las principales distribuciones de Linux, la versión de prueba se etiqueta con la fecha más reciente. Luego, los mantenedores del proyecto lo cargan como un tarball comprimido y los usuarios pueden descargarlo desde LTP GitHub.

Antes de que se construya RHTS-LTP en el paso final, se aplican algunas configuraciones internas (parámetros importantes, firmware, etc.) para que se ajuste al entorno RHEL o a un sistema de hardware de prueba específico. Después de eso, se aplican muchos parches exclusivos de RHEL para compilar el binario LTP.

Evaluación de problemas conocidos

El objetivo de las pruebas es identificar errores, y los errores se solucionan solo si se informan. La parte más importante de RHTS-LTP es el proceso de clasificación de problemas, que ayuda a los usuarios internos a distinguir los problemas conocidos de los desconocidos. Red Hat mantiene una lista interna de problemas conocidos de LTP para que las pruebas puedan ignorar los falsos positivos o corregir los errores que los causan.

La lista de problemas conocidos de LTP se basa en varias versiones de RHEL para garantizar la compatibilidad de LTP en las tareas de Beaker, incluidas RHEL 5, RHEL 6, RHEL 7, RHEL 8, RHEL 9 y versiones anteriores. Cuando un caso de RHTS-LTP falla durante la ejecución, se comprueba la lista de problemas conocidos para identificar si la herramienta LTP está defectuosa o si la compilación de RHEL requiere correcciones.

Esto definitivamente beneficia a los usuarios internos que prueban versiones menores y versiones principales, especialmente para varias líneas de productos, para localizar problemas rápidamente.

Examinando la mecánica de RHTS-LTP

RHTS-LTP consta de cuatro partes:

  • Paquete LTP estable
  • Parches upstream
  • Configuración interna
  • Filtrado de problemas conocidos

Siempre elegimos la última versión estable de LTP y luego agregamos nuestros cambios personalizados para crear un conjunto de pruebas dedicado para RHEL.

Aquí está el proceso completo de mantenimiento de LTP en forma de diagrama:

Compatibilidad con versiones derivadas menores

Además de una configuración especial y manejo de problemas conocidos, RHTS-LTP también proporciona una biblioteca compartida para admitir más versiones de prueba derivadas para uso dedicado en diferentes equipos funcionales. Todos estos usan la versión estable común de LTP, con los mismos problemas conocidos, aunque el foco está en diferentes componentes. Estos incluyen:

  • Prueba RHTS-Ltp-lite
  • RHTS-Ltp-filesystem-test
  • RHTS-Ltp-genérica-prueba
  • RHTS-Ltp-openposix-prueba
  • RHTS-Ltp-git-prueba

LTP también se implementa para pruebas de CentOS Stream y compatibilidad futura con varios kernel en Red Hat (incluidos ark-kernel, mainline-kernel y cki-testing). Casi todas las bifurcaciones nuevas se basan en esto con un trabajo de desarrollo secundario. Los mantenedores internos intercambian información a través de la biblioteca de inclusión y trabajan en estrecha colaboración para permitir una solución de problemas eficiente.

Probando juntos

La prueba es una parte vital de la garantía de calidad, y todos queremos que Linux sea consistentemente de la más alta calidad. Esto hace que LTP y RHTS-LTP sean partes importantes del desarrollo de Linux.

Linux no es solo un gran proyecto; es diversa y generalizada. Las contribuciones a las pruebas provienen de la comunidad. Ya sea que esa contribución sea en forma de parche o de una configuración especializada, definitivamente tiene un impacto positivo en la rama ascendente. Promueve el crecimiento saludable de LTP y mejores pruebas en el desarrollo de software. Con CentOS Stream trabajando más cerca que nunca con RHEL, la participación de la comunidad es aún más fácil que en el pasado. Visite la wiki de LTP para saber cómo puede participar.


Linux
  1. ¿Qué es un comando Chown en Linux y cómo usarlo?

  2. Cómo instalar y probar Ansible en Linux

  3. Cómo instalar y usar Flatpak en Linux

  4. Cómo instalar y usar Traceroute en Linux

  5. Cómo compilar e instalar GLFW 3 y usarlo en un proyecto de Linux

Cómo usar los comandos Pbcopy y Pbpaste en Linux

Cómo instalar y usar el comando de localización en Linux

Cómo utilizar Timeshift para realizar copias de seguridad y restaurar Linux

Cómo instalar y usar phpMyAdmin en Linux

Cómo instalar y usar el comando fd en Linux

Cómo instalar y usar Nu Shell en Linux