La prueba de software es diferente del desarrollo de software, no es más fácil. Al menos para los SDET.
Para usar el lenguaje de Microsoft: el desarrollo de software lo realizan ingenieros de desarrollo de software (SDE). La prueba de software la realizan ingenieros de prueba de software (STE) e ingenieros de desarrollo de software en prueba (SDET). Estas divisiones funcionales se han ido en su mayoría ahora, pero aún se aplican en otros lugares.
Las empresas estatales tienden a realizar pruebas manuales que eran demasiado caras para automatizar. Por ejemplo, configurar un conjunto de 20 máquinas en una variedad de topologías de red diferentes y probar su conectividad de extremo a extremo con herramientas programables, de forma manual o con las herramientas que los SDET escribieron para ellas.
- ¿Estás contento con tu decisión de unirte a la Fuerza Aérea de los Estados Unidos? Si pudieras retroceder en el tiempo, ¿te hubieras unido o seguido otra carrera? ¿Por qué?
- Soy un chico que trabaja en Delhi. Tengo sábado y domingo libre. ¿Cuál es un trabajo de medio tiempo para ganar algo extra?
- Tuve una mala experiencia en prácticas en una empresa. Si comparto mi experiencia por completo en una plataforma en línea, ¿corro el riesgo de que la empresa me demande?
- ¿Cuál es el mejor trabajo tecnológico en India para obtener más oportunidades en el sitio?
- ¿Cuál es el alcance del trabajo y la perspectiva de carrera para alguien que se especializa en redes vs sistemas integrados vs computación a gran escala?
Las SDET escribieron código para probar programas. Por ejemplo, si alguien escribió un conjunto de API, un SDET escribió pruebas exhaustivas para la API de forma individual y colectiva. También escribirían pruebas de estrés, pruebas de rendimiento, verificar el consumo de recursos, la corrección, etc.
Las SDE escriben código que se envía al cliente o que se ejecuta en servicios utilizados por el cliente o en su nombre.
El código SDET se escribe como código de “caso feliz”. Si llega a condiciones inesperadas (como falta de memoria), simplemente vuelva a ejecutarlo. El código SDE, por otro lado, a menudo se espera que se ejecute indefinidamente sin reiniciar, para sobrevivir a problemas inesperados y para comportarse de manera proscrita en cada circunstancia. El código SDET está más cerca de la calidad del código prototipo, mientras que se espera que el código SDE sea a prueba de balas.
¿Cuál de las dos tareas a continuación es más difícil?
- (SDE) Escribir un controlador de sistema de archivos para Windows
- (SDET) Verifique que un sistema de archivos determinado funcione correctamente en todos los casos.
Sí, yo tampoco lo sé. Pero tendería a pensar en escribir el controlador real.
¿Cuál de estos es más difícil?
- (SDE) Escriba una API que devuelva un número pseudoaleatorio.
- (SDET) Determine si esa API está haciendo su trabajo.
Si no respondió el trabajo de SDET para este, bueno, es por eso que no es un SDET y por qué lo necesita.
Los desarrolladores generalmente profundizan en un área. Los desarrolladores de pruebas generalmente son amplios y de profundidad media, aunque a veces son profundos solo por diversión.
Ninguno de los trabajos es intrínsecamente más difícil. Requieren diferentes tipos de pensamiento y diferente énfasis en los artefactos de código. Cualquier dificultad tiene más que ver con la tecnología específica (por ejemplo, sistemas de archivos vs. interfaces de script) que con el rol general.