Cem Kaner define el testing como una investigación técnica de un software con el fin de brindar información sobre la calidad de la misma, a las diferentes personas involucradas en su construcción. Para poder comenzar a estudiar testing es importante que conozcas lo que hace un tester, como para que sepas si te gusta la idea de trabajar en eso, y para saber si tienes el perfil adecuado o si lo puedes adquirir formándote.
¿En qué consiste el trabajo en testing?
Aunque no lo creas, ya has hecho esto llamado testing de manera informal. Probamos software todo el tiempo, solo que en el trabajo de testers lo hacemos con cierta organización, metodología y foco. Seguramente muchas veces has evaluado si usar una aplicación u otra, más ahora que estamos instalando apps a cada poco en nuestros dispositivos móviles.
Por ejemplo, hay muchas aplicaciones que me permiten escuchar radio FM en el celular. ¿Cuál utilizo? Para tomar esa decisión evaluaríamos distintas características:
- Que sea amigable con el usuario, o sea, que sea fácil de usar, fácil de entender su funcionamiento.
- Que no se corte la transmisión, lo cual está relacionado a la velocidad de la aplicación y de la forma que maneja la señal de radio.
- Que se vea bonita.
- Que no tenga muchas publicidades molestas.
- Que sea gratuita o al menos que no sea muy cara, que esté a mi alcance pagarla.
- Que no consuma mucha batería del dispositivo móvil.
- Y podemos pensar en muchos más ejemplos.
¿Cuál es el resultado? decidir si usar una u otra. Con esto se ve lo importante que es para una empresa hacer un buen testing, buenas pruebas, pensando en los usuarios, pues eso determinará qué tanto éxito tiene una aplicación, qué tantos usuarios se deciden por usar esa y no las de sus competidores.
Ahora, para seguir entendiendo de qué se trata todo esto de probar, pensemos ¿en qué te basas para probar? Te puedo contar algunos ejemplos de la vida cotidiana que tal vez te dan una idea de esto:
- Los fabricantes de pelotas de fútbol oficiales deben cumplir una serie de reglas determinadas por la FIFA. Entonces, solo serán aceptadas sus pelotas si cumplen esas especificaciones. Por eso es que las pruebas que se le hacen a las pelotas están basadas en las especificaciones que aporta la FIFA a los fabricadores.
- Hay pruebas que se le hacen a los autos para ver qué tan seguros son. Se los conocen como “crash test” o “pruebas de choque”, donde básicamente exponen un auto a un choque y analizan cómo se dañaría el auto y las personas que irían dentro del mismo. Existen un conjunto de reglas y condiciones que están especificadas, y esas pruebas se hacen en base a esas especificaciones.
- Si compro una televisión, radio o cualquier electrodoméstico, puedes probar si funciona correctamente siguiendo las indicaciones que aparecen en el manual. Si al seguirlas, el aparato no funciona como ahí está indicado, entonces puedes decir que está roto.
Si lo llevamos al software, siempre hay un cliente, o un usuario, que es el destinatario de la aplicación. Un especialista hace sus análisis y diseños para especificar en documentos cuál es el software que se quiere construir. A partir de esta documentación los desarrolladores construyen el software, y los testers lo pueden probar. Si bien no todas las empresas cuentan con los mismos estilos de documentación, y en algunos casos no se cuenta con tal, esta generalización la hago para transmitirte la idea.
Información para tomar decisiones y para generar confianza
Como te contaba al inicio, en la cita a Cem Kaner, el testing tiene como objetivo brindar información sobre la calidad de un producto. Con esta información se pueden tomar decisiones muy importantes, por ejemplo, si compro o no compro ese software que estamos probando, o si estoy probando algo que se está construyendo, la información será útil para saber cuándo liberar un producto, cuándo considero si está terminado como para sacarlo a la venta. Es más, la información que brinda las actividades de testing pueden llegar a ser útil incluso para ver cómo mejorar las diferentes áreas dentro de una empresa.
Esto muestra que tu trabajo será importante para los que construyen, para los que compran y para los que venden el software. Pero si piensas un poco más, será fundamental para quienes usan el software. Toda persona que sea usuaria de software (o sea, toda persona) tendrá mejor calidad de vida si esos productos le generan menos inconvenientes, si funcionan mejor. Por esto es que considero que el testing tiene un impacto social, un impacto en la vida de las personas.
Si bien uno lo que puede hacer es detectar problemas o riesgos, también vamos a poder dar una idea de qué tan confiable es el software. La confianza es fundamental, ya que, si me instalo una aplicación y no me da confianza, entonces no la quiero usar más, genera rechazo al cambio, rechazo al avance tecnológico. ¡El testing ayuda a tomar acciones para prevenir estos problemas!
¿Qué tan complicado es prepararme, y qué futuro tengo?
El testing de software es muy variado, hay actividades que son sumamente complejas, y otras no tanto. Creo que dentro del amplio espectro hay muchas tareas que las pueden hacer personas que no han aprendido a programar, que no tienen tantos conocimientos técnicos. Luego uno puede crecer dentro de esta profesión, pero es más rápido aprender a probar que aprender a programar, entonces es un excelente inicio, y luego uno puede profesionalizarse dentro de la misma rama, o tal vez seguir explorando otras.
Por esto es algo que en lo personal te lo recomiendo. Conozco mucha gente que se inició en este sector y le permitió crecer muchísimo dentro de las mismas actividades, y otros tantos que esta rama les permitió iniciarse y luego siguieron profesionalizándose en otras tareas, siempre dentro de las tecnologías de la información.
¿Dónde puedo estudiar testing?
Creo que Uruguay es el país con más opciones para estudiar testing per capita. Existen distintos institutos que ofrecen cursos cortos así como carreras (por ejemplo, la carrera de testing técnico que tenemos en Abstracta junto a BIOS, la carrera que ofrece el CES, y más recientemente, la opción del Plan Ceibal que es gratuita y online llamada Jóvenes a Programar). Hace un par de años iniciamos un curso de 4 meses, a realizar de forma online, llamado Abstracta Academy. También existe Nahual, donde se brindan cursos a jóvenes con ganas de superarse, de forma gratuita. Estoy a disposición por si necesitás más información.
Esté artículo me resulta muy informativo y muy claro aunque un poco redundante si ya has leido el libro de féderico como lo he hecho yo en reiteradas ocasiones con proposito de estudiar para diversas entrevistas de testing.
Hey there, I love all the points you made on that topic. There is definitely a great deal to know about this subject, and with that said, feel free to visit my blog QH5 to learn more about Cosmetics.