Software testing process for quality control of video games
Las pruebas de juegos , también llamadas pruebas de control de calidad ( QA ) dentro de la industria de los videojuegos , son un proceso de prueba de software para el control de calidad de los videojuegos . [1] [2] [3] La función principal de las pruebas de juegos es el descubrimiento y documentación de defectos de software . Las pruebas de software de entretenimiento interactivo son un campo altamente técnico que requiere experiencia en informática , competencia analítica, habilidades de evaluación crítica y resistencia. [4] [5] En los últimos años, el campo de las pruebas de juegos ha sido criticado por ser extremadamente extenuante y poco gratificante, tanto financiera como emocionalmente. [6]
Historia
En los inicios de los videojuegos y los ordenadores, el desarrollador estaba a cargo de todas las pruebas. No se necesitaron más de uno o dos probadores debido al alcance limitado de los juegos. En algunos casos, los programadores podrían encargarse de todas las pruebas. [ cita necesaria ]
A medida que los juegos se vuelven más complejos, se necesita un conjunto mayor de recursos de control de calidad, llamado "Evaluación de calidad" o " Garantía de calidad ". La mayoría de los editores emplean un gran personal de control de calidad para probar varios juegos de diferentes desarrolladores. A pesar de la gran infraestructura de control de calidad que tienen la mayoría de los editores, muchos desarrolladores contratan a un pequeño grupo de evaluadores para proporcionar control de calidad sobre el terreno.
Ahora la mayoría de los desarrolladores de juegos confían en sus probadores altamente técnicos y expertos en juegos para encontrar fallos y "errores" ya sea en el código de programación o en las capas gráficas. Los probadores de juegos suelen tener experiencia jugando una variedad de juegos diferentes en una multitud de plataformas. Deben poder anotar y hacer referencia a cualquier problema que encuentren en informes detallados, cumplir con los plazos de las tareas y tener el nivel de habilidad para completar los títulos del juego en sus entornos más difíciles. La mayoría de las veces, el puesto de probador de juegos es un puesto muy estresante y competitivo con poca remuneración, pero es muy buscado porque sirve como puerta de entrada a la industria. Los probadores de juegos son personas observadoras y pueden detectar defectos menores en la construcción del juego.
Un error común es creer que todos los probadores de juegos disfrutan de la versión alfa o beta del juego y reportan errores ocasionales. [5] Por el contrario, las pruebas de juegos se centran en gran medida en encontrar errores utilizando metodologías establecidas y a menudo tediosas antes de la versión alfa.
Descripción general
La garantía de calidad es un componente crítico en el desarrollo de juegos, aunque la industria de los videojuegos no cuenta con una metodología estándar. En cambio, los desarrolladores y editores tienen sus propios métodos. Los pequeños desarrolladores generalmente no cuentan con personal de control de calidad; sin embargo, las grandes empresas pueden emplear equipos de control de calidad a tiempo completo. Los juegos comerciales de alto perfil son probados de manera profesional y eficiente por el departamento de control de calidad del editor. [7]
Las pruebas comienzan tan pronto como se escribe el primer código y aumentan a medida que el juego avanza hacia su finalización. [8] [9] El equipo principal de control de calidad supervisará el juego desde su primer envío al control de calidad hasta la posproducción. [9] Al principio del proceso de desarrollo del juego, el equipo de pruebas es pequeño y se centra en la retroalimentación diaria del nuevo código. A medida que el juego se acerca a la etapa alfa , se emplean más miembros del equipo y se escriben planes de prueba. A veces, las funciones que no son errores se informan como errores y, a veces, el equipo de programación no soluciona los problemas a la primera. [10] Un buen sistema de informe de errores puede ayudar a los programadores a trabajar de manera eficiente. A medida que el proyecto entre en la etapa beta , el equipo de pruebas tendrá asignaciones claras para cada día. Los comentarios del evaluador pueden determinar decisiones finales de exclusión o inclusión de funciones finales. Presentar evaluadores con nuevas perspectivas puede ayudar a identificar nuevos errores. [9] [11] En este punto, el evaluador principal se comunica diariamente con el productor y los jefes de departamento. [12] Si el desarrollador tiene un editor externo, entonces comienza la coordinación con el equipo de control de calidad del editor. Para los juegos de consola, se envía una compilación para el equipo de control de calidad de la empresa de consolas. Las pruebas beta pueden involucrar a voluntarios, por ejemplo, si el juego es multijugador. [11]
Los evaluadores reciben de los desarrolladores compilaciones de juegos programadas e identificables de forma única [11] . [ cita necesaria ] El juego se prueba y los evaluadores notan cualquier error descubierto. Estos pueden variar desde errores hasta fallos artísticos, errores lógicos y errores de nivel . Las pruebas requieren un juego creativo para descubrir errores a menudo sutiles. Algunos errores son fáciles de documentar, pero muchos requieren una descripción detallada para que un desarrollador pueda replicar o encontrar el error. Los evaluadores implementan control de concurrencia para evitar registrar errores varias veces. [ cita necesaria ] Muchas empresas de videojuegos separan por completo las pruebas de requisitos técnicos de las pruebas de funcionalidad, ya que se requiere un conjunto de habilidades de prueba diferente. [5]
Si el desarrollo de un videojuego entra en un momento crítico antes de la fecha límite, el equipo de prueba del juego debe probar sin demora las características y el contenido agregados tarde. Durante este período, el personal de otros departamentos puede contribuir a las pruebas, especialmente en juegos multijugador. [ cita necesaria ] Un ejemplo de crisis sostenida, especialmente entre el equipo de control de calidad, fue en Treyarch durante el desarrollo de Call of Duty: Black Ops 4 . [13]
La mayoría de las empresas clasifican los errores según una estimación de su gravedad: [14]
- Los errores son errores críticos que impiden que el juego se envíe; por ejemplo, pueden bloquear el juego. [11]
- Los errores B son problemas esenciales que requieren atención; sin embargo, es posible que aún se pueda jugar al juego. Varios errores B son igualmente graves para un error A. [11]
- Los errores de C son problemas pequeños y oscuros, a menudo en forma de recomendación en lugar de errores. [12]
Probador del juego
Un probador de juegos es un miembro de un equipo de desarrollo que realiza pruebas de juegos.
Roles
La organización del personal difiere entre organizaciones; una empresa típica puede emplear las siguientes funciones asociadas con las disciplinas de prueba:
- Los productores de juegos son responsables de establecer los plazos de prueba en coordinación con marketing y control de calidad. [15] También gestionan muchos elementos fuera de las pruebas del juego, relacionados con la producción general de un título. Por lo general, se requiere su aprobación para el envío final o el estado " oro ". [dieciséis]
- El probador principal , el líder de pruebas [10] o el líder de control de calidad [7] es la persona responsable de que el juego funcione correctamente [10] y administre las listas de errores. [11] Un evaluador líder gestiona el personal de control de calidad. [7] El evaluador principal trabaja en estrecha colaboración con diseñadores y programadores, especialmente hacia el final del proyecto. El evaluador principal es responsable de realizar un seguimiento de los informes de errores y garantizar que se solucionen. [10] También son responsables de que los equipos de control de calidad produzcan informes formales y completos. [11] Esto incluye descartar informes de errores duplicados y erróneos, así como solicitar aclaraciones. [7] A medida que el juego se acerca a las etapas alfa y beta, el evaluador principal incorpora más evaluadores al equipo, coordina con equipos de pruebas externos y trabaja con la gerencia y los productores. [14] Algunas empresas pueden impedir que el juego se convierta en oro hasta que el evaluador principal lo apruebe. [12] Los evaluadores principales también suelen ser responsables de compilar muestras representativas de imágenes de juegos para enviarlas a organismos reguladores como la ESRB y PEGI . [ cita necesaria ]
- Los evaluadores son responsables de comprobar que el juego funciona, es fácil de usar, tiene acciones que tienen sentido y contiene una jugabilidad divertida. [12] Los evaluadores deben escribir informes de errores precisos y específicos y, si es posible, proporcionar descripciones de cómo se puede reproducir el error. [17] Los probadores pueden ser asignados a un solo juego durante toda su producción, o incorporarse a otros proyectos según lo exija el cronograma del departamento y las necesidades específicas.
- SDET (Ingeniero de desarrollo de software en pruebas) o probadores técnicos son responsables de crear marcos y casos de prueba automatizados, así como de gestionar problemas de prueba complejos, como el rendimiento general y la seguridad del juego. Estas personas suelen tener sólidas habilidades de desarrollo de software, pero se centran en escribir software que expone defectos en otras aplicaciones. Los roles y deberes específicos variarán entre los estudios. Muchos juegos se desarrollan sin ningún probador técnico.
Empleo
El control de calidad del juego es menos técnico que el control de calidad del software general. Los probadores de juegos suelen requerir experiencia, aunque a veces basta con un diploma de escuela secundaria y sin conocimientos técnicos. [ cita necesaria ] Las pruebas de juegos suelen ser un trabajo de tiempo completo para evaluadores experimentados; [18] sin embargo, muchos empleados son contratados como personal temporal , [2] [19] como los probadores beta . En algunos casos, los evaluadores empleados por un editor pueden ser enviados a trabajar en el sitio del desarrollador. La temporada de reclutamiento más agresiva es a finales del verano/principios del otoño [ cita requerida ] , ya que este es el comienzo del período decisivo para que los juegos estén terminados y enviados a tiempo para la temporada navideña.
Algunos estudios de juegos están empezando a adoptar un enfoque más técnico para el control de calidad de los juegos, más en línea con las pruebas de software tradicionales. Los puestos de pruebas técnicas todavía son bastante raros en toda la industria, pero estos trabajos suelen ser puestos de tiempo completo con trayectorias profesionales a largo plazo y requieren un título en informática de 4 años y una experiencia significativa con la automatización de pruebas.
Algunos evaluadores utilizan el trabajo como un trampolín en la industria de los juegos. [3] [20] Los currículums de control de calidad, que muestran conjuntos de habilidades no técnicas, tienden más hacia la gestión que hacia el marketing o la producción. [ cita necesaria ] Los solicitantes de puestos de programación , arte o diseño deben demostrar habilidades técnicas en estas áreas. [21]
Compensación
El personal de pruebas de juegos suele cobrar por hora (alrededor de 10 a 12 dólares la hora). La gestión de pruebas suele ser más lucrativa y requiere experiencia y, a menudo, educación universitaria. Una encuesta anual encontró que los evaluadores ganan un promedio de 39.000 dólares al año. Los evaluadores con menos de tres años de experiencia ganan un promedio de 25.000 dólares estadounidenses, mientras que los evaluadores con más de tres años de experiencia ganan 43.000 dólares estadounidenses. Los responsables de pruebas, con más de seis años de experiencia, ganan una media de 71.000 dólares al año. [22]
Proceso
A continuación se muestra una progresión típica del informe de errores del proceso de prueba:
- Identificación . El comportamiento incorrecto del programa se analiza y se identifica como error.
- Informes . El error se informa a los desarrolladores mediante un sistema de seguimiento de defectos . Las circunstancias del error y los pasos para reproducirlo se incluyen en el informe. Los desarrolladores pueden solicitar documentación adicional, como un vídeo en tiempo real de la manifestación del error.
- Análisis . El desarrollador responsable del error, como un artista, programador o diseñador de juegos, comprueba el mal funcionamiento. Esto está fuera del alcance de las funciones del evaluador de juegos, aunque las inconsistencias en el informe pueden requerir más información o evidencia por parte del evaluador.
- Verificación . Una vez que el desarrollador soluciona el problema, el evaluador verifica que el error ya no ocurre. El desarrollador no soluciona todos los errores; por ejemplo, algunos errores pueden reclamarse como características (expresados como "NAB" o "no es un error") y los productores también pueden "renunciar" (dar permiso para ignorarlos) . diseñadores de juegos , o incluso probadores principales, según la política de la empresa.
Metodología
No existe un método estándar para probar juegos y la mayoría de las metodologías son desarrolladas por desarrolladores y editores de videojuegos individuales . Las metodologías se perfeccionan continuamente y pueden diferir para diferentes tipos de juegos (por ejemplo, la metodología para probar un MMORPG será diferente a la de probar un juego casual ). Muchos métodos, como las pruebas unitarias , se toman prestados directamente de técnicas generales de prueba de software. A continuación se detallan las metodologías más importantes, específicas de los videojuegos.
- Las pruebas de funcionalidad se asocian más comúnmente con la frase "pruebas de juegos", ya que implica jugar de alguna forma. Las pruebas de funcionalidad no requieren amplios conocimientos técnicos. Los evaluadores de funcionalidad buscan problemas generales dentro del juego en sí o en su interfaz de usuario, como problemas de estabilidad, problemas con la mecánica del juego y la integridad de los activos del juego.
- Las pruebas de cumplimiento son la razón de la existencia de laboratorios de pruebas de juegos. [ se necesita aclaración ] Los licenciantes propios para plataformas de consola tienen títulos con requisitos técnicos estrictos licenciados para sus plataformas. Por ejemplo, Sony publica una Lista de verificación de requisitos técnicos (TRC), Microsoft publica Requisitos de Xbox (XR) y Nintendo publica un conjunto de "pautas" (Lotcheck). Algunos de estos requisitos son muy técnicos y quedan fuera del alcance de las pruebas del juego. Otras partes, en particular el formateo de los mensajes de error estándar, el manejo de los datos de la tarjeta de memoria y el manejo de material legalmente registrado y protegido por derechos de autor , son responsabilidad de los probadores del juego. Incluso una sola infracción en la presentación para la aprobación de la licencia puede hacer que el juego sea rechazado, lo que posiblemente incurra en costos adicionales en pruebas adicionales y reenvío. Además, el retraso puede hacer que el título pierda una ventana de lanzamiento importante, lo que podría costarle al editor sumas de dinero aún mayores.
- Los requisitos son documentos de propiedad entregados a desarrolladores y editores bajo acuerdos de confidencialidad. No están disponibles para que el público en general los revise, aunque la familiaridad con estos estándares se considera una habilidad valiosa como evaluador. [ cita necesaria ]
- El cumplimiento también puede referirse a organismos reguladores como la ESRB y PEGI , si el juego tiene como objetivo una clasificación de contenido particular. Los evaluadores deben informar contenido objetable que pueda ser inapropiado para la calificación deseada. De manera similar a lo que ocurre con las licencias, los juegos que no reciben la calificación deseada deben volver a editarse, probarse y enviarse nuevamente por un costo adicional.
- Las pruebas de compatibilidad garantizan que el juego se ejecute en diferentes configuraciones de hardware y software . El hardware abarca marcas de diferentes fabricantes y una variedad de periféricos de entrada, como gamepads y joysticks . [ cita necesaria ]
- Los evaluadores también evalúan el rendimiento y los resultados se utilizan para los requisitos mínimos del sistema anunciados para el juego . El desarrollador puede solucionar los problemas de compatibilidad o rendimiento o, en el caso de hardware y software heredados, se puede cancelar el soporte.
- Las pruebas de localización actúan como editores de texto en el juego . [2] Aunque los problemas de texto generales son parte de las pruebas de funcionalidad, los departamentos de control de calidad pueden emplear evaluadores de localización dedicados. En particular, las primeras traducciones de juegos japoneses estaban plagadas de errores, y en los últimos años se emplean evaluadores de localización para hacer correcciones técnicas y revisar el trabajo de traducción de los guiones de los juegos [23] , colecciones catalogadas de todo el texto del juego. Se pueden contratar evaluadores nativos de la región donde se comercializa un juego para garantizar la precisión y calidad de la localización de un juego. [9]
- La prueba de remojo , en el contexto de los videojuegos, implica dejar el juego ejecutándose durante períodos prolongados en varios modos de funcionamiento, como inactivo, pausado o en la pantalla de título. Esta prueba no requiere interacción del usuario más allá de la configuración inicial y, por lo general, la administran los evaluadores principales. Se pueden utilizar herramientas automatizadas para simular acciones repetitivas, como clics del mouse. El remojo puede detectar pérdidas de memoria o errores de redondeo que se manifiestan sólo con el tiempo. Las pruebas de remojo son uno de los requisitos de cumplimiento. [ cita necesaria ]
- Las pruebas beta se realizan durante la etapa beta de desarrollo. A menudo esto se refiere a la primera versión disponible públicamente de un juego. Las versiones beta públicas son efectivas porque miles de fanáticos pueden encontrar errores que los evaluadores del desarrollador no encontraron.
- Las pruebas de regresión se realizan una vez que los programadores han solucionado un error . El control de calidad verifica si el error sigue ahí (regresión) y luego ejecuta pruebas similares para ver si la solución rompió algo más. Esa segunda etapa a menudo se denomina "prueba de halo" [ cita necesaria ] ; Implica probar todo alrededor de un error, buscando otros errores.
- Las pruebas de carga prueban los límites de un sistema, como la cantidad de jugadores en un servidor MMO , la cantidad de sprites activos en la pantalla o la cantidad de subprocesos que se ejecutan en un programa en particular. Las pruebas de carga pueden requerir un gran grupo de probadores o software que emule una actividad intensa. [2] Las pruebas de carga también miden la capacidad de una aplicación para funcionar correctamente bajo carga.
- Las pruebas multijugador pueden involucrar un equipo de control de calidad multijugador separado si el juego tiene partes multijugador significativas. Esta prueba es más común con los juegos de PC. Los probadores garantizan que todos los métodos de conectividad (módem, LAN, Internet) estén funcionando. Esto permite que las pruebas para un jugador y multijugador se realicen en paralelo. [9]
- El modelado de la experiencia del jugador se refiere a los intentos de modelar matemáticamente la experiencia del jugador y predecir la preferencia o el gusto del jugador por un videojuego . [24]
Hardware de la consola
Para las consolas, la mayoría de las pruebas no se realizan en un sistema o unidad de consumo normal . Se proporciona equipo de prueba especial a desarrolladores y editores. Las herramientas más importantes son los kits de prueba o depuración y los kits de desarrollo . La principal diferencia con las unidades de consumo es la capacidad de cargar juegos desde un disco grabado, una memoria USB o un disco duro. La consola también se puede configurar para cualquier región de publicación. Esto permite a los desarrolladores de juegos producir copias para realizar pruebas. Esta funcionalidad no está presente en las unidades de consumo para combatir la piratería de software y las importaciones del mercado gris. [ cita necesaria ]
- Los kits de prueba tienen las mismas especificaciones de hardware y apariencia general que una unidad de consumo, aunque a menudo con puertos y conectores adicionales para otros equipos de prueba. Los kits de prueba contienen opciones adicionales, como ejecutar comprobaciones de cumplimiento automatizadas, especialmente con respecto a los datos guardados. El software del sistema también permite al usuario capturar volcados de memoria para ayudar en la depuración. [ cita necesaria ]
- Los probadores de juegos normalmente no utilizan los kits de desarrollo , pero los programadores los utilizan para pruebas de nivel inferior. Además de las características de un kit de prueba, los kits de desarrollo suelen tener especificaciones de hardware más altas, en particular una mayor memoria del sistema. Esto permite a los desarrolladores estimar el rendimiento inicial del juego sin preocuparse por las optimizaciones. Los kits de desarrollo suelen ser más grandes y tienen un aspecto diferente al de un kit de prueba o una unidad de consumo. [ cita necesaria ]
Ver también
Notas
- ^ Bates 2004, págs.176-180
- ^ abcd Moore, Novak 2010, pág. 95
- ^ ab Oxland 2004, pág. 301-302
- ^ Bates 2004, págs.178, 180
- ^ abc Oxland 2004, pag. 301
- ^ "La dura vida de un probador de juegos" de IGN
- ^ abcd Bethke 2003, pag. 52
- ^ Bates 2004, pag. 176
- ^ abcdef Bethke 2003, pág. 53
- ^ abcd Bates 2004, pag. 177
- ^ abcdefg Bates 2004, pag. 178
- ^ abcd Bates 2004, pag. 179
- ^ Brendan Sinclair (26 de junio de 2019). "Historias de crisis y negligencia en el control de calidad en Treyarch". industriadeljuego.biz . Consultado el 9 de junio de 2022 .
- ^ ab Bates 2004, págs. 178-179
- ^ Moore, Novak 2010, pág. 72
- ^ Bob Johnstone. "Juegos Didi". Investigación sobre Videojuegos . Juegos Didi. Archivado desde el original el 6 de octubre de 2014 . Consultado el 1 de abril de 2009 .
- ^ Bates 2004, pag. 180
- ^ Moore, Novak 2010, pág. 25
- ^ Moore, Novak 2010, pág. 2
- ^ Bates 2004, pag. 261
- ^ Moore, Novak 2010, págs.84, 237-238
- ^ Fleming, Jeffrey (abril de 2008). "VII Encuesta Anual de Salarios". Desarrollador de juegos . 15 (4). Medios Empresariales Unidos : 8.
- ^ Adams, Rollings 2003, pág. 17
- ^ Yannakakis, Geogios N (2012). "Juego de IA revisado". Actas de la novena conferencia sobre fronteras de la informática (PDF) . págs. 285–292. doi :10.1145/2212908.2212954. ISBN 9781450312158. S2CID 4335529. Archivado (PDF) desde el original el 8 de agosto de 2014.
Referencias
- Adams, Ernesto; Rollings, Andrés (2003). "Andrew Rollings y Ernest Adams sobre diseño de juegos" . Publicación de nuevos ciclistas. ISBN 1-59273-001-9.
- Bates, Bob (2004). Diseño de juegos (2ª ed.). Tecnología del curso Thomson. ISBN 1-59200-493-8.
- Moore, Michael E.; Novak, Jeannie (2010). Guía profesional de la industria del juego . Delmar: Aprendizaje Cengage. ISBN 978-1-4283-7647-2.
- Oxland, Kevin (2004). Jugabilidad y diseño . Addison Wesley. ISBN 0-321-20467-0.
Investigación
- Lahti, M., Pruebas de juegos en empresas de juegos finlandesas, tesis de maestría, Universidad Aalto, Facultad de Ciencias, 2014, Tesis
enlaces externos
- Artículo: Conceptos básicos de la automatización de pruebas para aplicaciones, juegos y la Web móvil
- Artículo: Aspectos de arquitectura e infraestructura de las pruebas de juegos móviles