He leído muchos artículos y foros que discuten sobre si un Software Quality Engineer (SQE) tiene que sabe programar o no. La respuesta podría ser “depende”, pero mi respuesta a esta respuesta es ¿porque no?. En la universidad aprendí varios lenguajes de programación, y actualmente tengo mucho interés en PHP y Python…pero, ¿esto significa que soy un experto? Por supuesto que no, pero al menos un SQE tiene que tener unas mínimas nociones y conocimientos de programación.
Realmente, de una forma u otra seguramente tendrás que enfrentarte a algún proyecto en el que los conocimientos de programación sean requeridos. Por ejemplo, si paticipas en un proyecto de automatización deberás saber programar….o un proyecto de pruebas de rendimiento (será necesario que utilices alguna de las herramientas que están en el mercado).
Tal vez no haya mucho debate y todos estemos de acuerdo que es necesario que un SQE tenga conocimientos de programación, pero espero vuestras opiniones!!!!!!
Saludos


Estoy totalmente de acuerdo en que es imprescindible tener unas nociones mínimas de programación, estructura del lenguaje, etc…
Hace relativamente poco en el proyecto tuvimos que testear unos WebServices. Sin ser una tecnología excesivamente compleja, mucha gente del equipo tuvo problemas para crear los test cases, al final tuvimos que cambiar parte del equipo por gente que conociera mínimamente la tecnología web, XML, etc… ya que estábamos perdiendo mucho tiempo en explicar cosas a los testers que (a mi juicio) deberían saber.
Además, las nociones de programación a un tester le aporta nuevos puntos de vista y nuevos enfoques que hacen incrementar la cobertura y calidad de los test cases.
Y no hablemos de los tests de White Box… para esos es ‘mandatory’ tener buenos conocimientos de programación.
Aqui se vuelve tambien a la discusion entre tester o SQE.
Pero bueno, desde mi punto de vista un buen tester funcional no tiene que saber programar.
Para probar una pantalon no tengo que saber cocer.
Lo puedo poner un par de veces, tirarlo al aqua, tirarlo para confirmar si no se rompe etc.
Pero creo que el problema llega cuando hay defectos y tienes que discutir con el programador. Es bueno que un equipo de desarollo se da cuenta que no te pueden enganar facil.
Conclusion: Una base de programacion hay que tener.
Recomiendo Cobol porque es muy estructurado, facil de aprender lo bases y es muy utilizado en entornos financieras.
Todo depende del tipo de tester que se quiera ser. Yo pienso que existen dos grandes grupos de testers: Los expertos en un área en particular (no necesariamente informáticos) que hacen testing funcional de aplicaciones de su área de expertise, y los testers más técnicos.
Los testers más técnicos o con formación informática sí deberían saber programar. Muchas veces no sólo para entender porqué ocurre un bug o tratar de cazar bugs teniendo en cuenta posibles fallas en el código sino también para programar tools, pequeños sistemas y scripts para automatizar pruebas.
Como un valor añadido, si debería tener nociones de programación, pero más que programación diría que debe saber interpretar un lógica de programación (independientemente del lenguaje), ya que como dice Anko, al defender un “issue” frente al equipo de Desarrollo, es mejor ir con “armas” mejores que inclusive le ayuden (valor agregado para Desarrollo) al programador a encontrar más fácilmente la solución.
Sin embargo, en paquetes cerrados, con testers netamente funcionales, creo que ese requisito es menos necesario.
Pero insisto, es un valor añadido para los miembros de un equipo de testing.