Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Apuntes Testing CLASE 1 PDF
Apuntes Testing CLASE 1 PDF
Proyecto Nahual
CLASE 1
http://www.nahual.com.ar/
¿Qué vimos en la primer clase?
1. Testing ….¿qué?
2. Sobre nosotros: Proyecto Nahual
a. Nuestro manifiesto
3. ¿Qué es un Tester? ¿El curso es para mí?
4. Introducción a la Informática
a. ¿Qué es una computadora?
b. Componentes de una computadora
5. Los roles en la Industria del Software
a. Importancia del equipo
b. Roles que participan
6. El ciclo de vida del Software
7. Empezando a entrar al mundo del Testing…
a. Celfar
b. ¿Qué es una Especificación?
c. Volviendo a Celfar…
8. Recapitulando algunas definiciones...
http://www.nahual.com.ar/
Testing ….¿qué?
Hola! Bienvenido/a al curso de Testing
A lo largo de este manual vamos a ir documentando todo lo que necesitás saber sobre el
mundo del Testing, así que por ahora, por favor, no desesperes!
Antes que nada, queremos aclarar que este manual no reemplaza la asistencia a clases
sino que busca que tengas un material al cual acceder si lo necesitás. Por eso, te
pedimos que no faltes.
Nuestro manifiesto
Nuestras metas son la contención y la integración.
Contención e integración en respuesta a la desesperanza y a la fragmentación social que
vivimos.
Contención para aquellos que viven una realidad difícil y encuentran en este espacio un
lugar divertido, cordial e interesante. Divertido porque genera risas, cordial por su buena
onda e interesante porque despierta inquietudes.
Contención también de los profesores que, al utilizar este espacio de enseñanza y de
reunión, descubren nuevas formas de sentirse útiles; de dar y recibir.
Mediante juegos y compartiendo actividades del día a día buscamos desestructurar la
relación alumno-profesor para luego sembrar perseverantemente una nueva relación
fundada en el respeto, la paciencia, la comprensión. Sólo así la transmisión de nuestros
valores rendirá sus frutos.
Integración al vincular el proyecto y sus miembros con el entorno, creando y fortaleciendo
lazos, combatiendo la exclusión, los prejuicios y la desesperanza.
Creemos en la integración “hacia adentro” -donde los demás se acercan al proyecto- y
“hacia afuera” -donde los alumnos salen a crear sus propios proyectos y a caminar sus
propios senderos-.
Como vehículo que transporta el espíritu del proyecto, elegimos la enseñanza informática
destacando la creación de programas de computadora. De esta manera, estimulamos
directamente: la imaginación, el trabajo en equipo, la comunicación, la capacidad de
análisis, la curiosidad por aprender, entre otras cosas. Estas herramientas, creemos, son
valiosas en cualquier disciplina y amplían el abanico de oportunidades.
http://www.nahual.com.ar/
La construcción de programas entendida como oficio puede ser una oportuna salida
laboral. En Nahual, nos interesa formar perfiles como programador, diseñador, tester u
otros vinculados con la industria del software. Queremos que el proyecto sea un
complemento para el desarrollo laboral de los alumnos.
En el proceso recogemos frutos que no son buscados directamente; como ser la
alfabetización informática, mayor contacto con el inglés, trabajo en equipo, razonamiento
matemático y lógico-deductivo.
El Testing es un oficio dentro de la Industria del Software. Esta industria es la que genera
programas de computadora como por ejemplo los que todos usamos. Es una industria
más, como podría serlo la industria automotriz, la petrolera, o cualquier otra que se te
cruce por la cabeza, pero como veníamos diciendo, su objetivo es crear programas. Estos
programas pueden ser de cualquier tipo, desde el programa gigante para manejar un
banco o una empresa, el software para controlar un avión o hasta los jueguitos que todos
jugamos en el celular.
El Tester es la persona que hace Testing. ¿Qué significa eso? Que se encarga de
asegurar la calidad de estos programas que te venimos mencionando. ¿Y en castellano,
qué es eso? Asegurar la calidad de los programas significa verificar que los programas
funcionen como tienen que funcionar. Como te veníamos diciendo, es un oficio, y como en
todo oficio, el Tester tiene responsabilidades que tiene que conocer. Antes de que te
asustes con todo esto, el Tester no trabaja solo, sino que está en un equipo junto con
otros Testers y otras personas que cumplen otras funciones dentro de la Industria del
Software.
El oficio de Tester, como la mayoría de los de la Industria del Software, tiene mucha
salida laboral hoy en día, por eso es que creamos este curso.
Si tenés una compu cerca, Fede, uno de los Nahualeros, te explica en un lindo video todo
esto que te venimos contando: https://www.youtube.com/watch?v=7nOVzt-VTt4
¡A no desesperar con tantas palabras nuevas! Cualquiera con ganas y voluntad puede ser
un Tester (o cualquier cosa que se proponga), y para eso estamos nosotros, para que el
camino sea mucho más fácil y feliz . Así que bienvenidos al curso y…a Testear!!
http://www.nahual.com.ar/
“La única forma de tener buenas ideas es tener muchas ideas”
Introducción a la Informática
Si bien tocamos algunos de estos conceptos informáticos en la clase, vamos a reforzar
algunas ideas...
Yendo a Wikipedia, una computadora puede definirse como “una máquina electrónica
que recibe y procesa datos para convertirlos en información conveniente y útil”.
Básicamente, es una máquina que está diseñada para facilitarnos la vida y ayudarnos
en nuestras tareas cotidianas, como elaborar cartas o una hoja de vida, hablar con
personas de otros países, hacer presupuestos, jugar ,navegar en Internet, y sobre todo,
usar todos los programas y herramientas necesarias para cumplir con nuestra tarea de
Testers
http://www.nahual.com.ar/
se pueden tocar. Un ejemplo en el caso de un auto podría ser el programita que
avisa cuando el tanque está vacío.
En esta imagen les dejamos resumido lo que venimos hablando hasta ahora.
http://www.nahual.com.ar/
Los roles en la Industria del Software
Antes de empezar a ver las distintas tareas que hace un Tester, vamos a contarles un
poco sobre los distintos papeles que existen dentro de la Industria del Software.
Es muy importante que tengan una idea de qué hace cada uno, porque como les venimos
diciendo, un Tester no trabaja solo sino que es parte de un gran equipo.
http://www.nahual.com.ar/
El Cliente
Básicamente, el cliente, o como nos gusta llamarlo a nosotros, “El Señor Billetín” ;), es
quien tiene una necesidad que nuestro equipo tiene que resolver y el que pone la plata
para que nosotros podamos solucionarla.
Se puede pensar que tratar al cliente como parte del equipo de desarrollo es extraño, pero
en realidad, no lo es: El cliente es un factor importante en el éxito de un proyecto, tanto
como cualquier otro miembro del equipo, por eso es importante contar con la participación
activa del cliente dentro del proyecto.
También es importante entender quién es en realidad “El Cliente”. El cliente, es, quien
pone en marcha el proyecto, paga las cuentas, o define el resultado final. Aun si no
se tiene literalmente un “cliente”, es bueno entender que aun así existe un rol “cliente” en
el proyecto. Esto puede ayudar a evitar confusiones. Hay que asegurarse de que exista
algún responsable de tomar las decisiones cuando estos requisitos sean
contradictorios.
El Analista Funcional
El Desarrollador
El Tester
Las pruebas son una parte importante para asegurar que el software funciona de la
manera que debería. El tester es quien verifica la calidad del software que se está
fabricando.
La calidad involucra muchos aspectos y es importante que el tester los tome en cuenta.
Estos son algunos:
Asegurar que el software cumpla con las necesidades del cliente
Asegurar que no haya errores introducidos por los desarrolladores
http://www.nahual.com.ar/
Asegurar que el software sea agradable visualmente
Dar ideas al usuario para lograr un mejor uso de la aplicación
El Líder de Proyecto
El Usuario
http://www.nahual.com.ar/
Todo empieza cuando alguien tiene un problema a resolver, que por algún motivo no lo
puede hacer por su cuenta (porque no sabe, porque no tiene tiempo, no tiene ganas, etc)
y como tiene $ (El señor billetín guiño guiño) contrata gente para que le resuelvan su
problema. Esta personita a la que cariñosamente llamamos Sr Billetín es el cliente.
El Cliente tiene una necesidad y se la cuenta a otra persona, esa otra persona es el
analista, el analista anota todo! Todos los detalles, y con lo que le cuenta el cliente arma
un documento (porque sino nos olvidamos de las cosas, no?) que se llama
Especificación/documento funcional/requerimientos, ahí enumera todas las cosas
que el cliente quiere y llegan a un acuerdo: resolver su problema inicial.
Con ese documento el analista charla con otra persona encargada de tirar magia, de
construir con pico y pala, el programador/desarrollador! El programador es el encargado
de crear ese software (una de las partes del mismo, ya que se termina haciendo entre
todos), a partir de los documentos, traduce esas oraciones en otros ingredientes que al
terminar de integrarse crean un programita.
Entonces, ya está? Le dan el programa al cliente y listo? ¿qué me vas a enseñar
entonces?
Paren paren, somos humanos y nos equivocamos no? por eso mismo están ustedes! Acá
aparece el rol del Tester. El tester es el encargado de controlar que ese programita que
http://www.nahual.com.ar/
se hizo cumpla con lo que pidió el cliente y hasta que el tester no dé el "OK" no se
termina el proceso, por eso es un rol super importante! El tester asegura la calidad del
producto final, compara lo que se escribió en las especificaciones contra el resultado final
(el programita) y busca las diferencias!
Ahora, ¿se dan cuenta de lo importante que es que existan los testers?
Celfar
Esta es la primera aplicación que vamos a usar. Es un programita sencillo que convierte la
temperatura de grados Celsius (los que vemos en la tele en el pronóstico) a otro formato
llamado Fahrenheit.
Cuando entren a la página van a ver varios links. Van a encontrar un link a las
Especificaciones, y seguido a esto, van a ver varias versiones del programa.
Primero vamos a abrir las Especificaciones:
http://www.nahual.com.ar/
¿Qué es una Especificación?
Como pueden ver en el texto de Celfar, la Especificación es un documento que explica
qué es lo que tiene que hacer y tener el software que vamos a testear.
Yendo a una definición un poco más formal, la Especificación Funcional es un documento
que detalla todas las funcionalidades que debe tener una aplicación.
Cuando hablamos de funcionalidades nos referimos a determinadas acciones o
comportamientos que debería realizar un software. Por ejemplo, ingresar al sistema, sería
una funcionalidad.
En el desarrollo de software generalmente hay mucha gente involucrada por lo que se
vuelve más complicada y compleja la comunicación entre todos. En un proceso de
desarrollo de software vamos a encontrar a un cliente (quien tiene una necesidad) y un
proveedor (quien satisface dicha necesidad).
Cuando un cliente solicita el desarrollo de un software está describiendo algo que
todavía no existe y por lo tanto es importante que se pueda definir bien cómo debe
funcionar ese software (que debe hacer, y que no debe hacer).
Para que el cliente se anime a comprar (o a esperar por) algo que aún no existe es muy
importante que el cliente y el equipo de proyecto se puedan poner de acuerdo sobre
qué va a recibir el cliente cuando el proyecto termine, es decir, cómo va a funcionar
esa aplicación.
La persona encargada de crear este documento y de pasárnoslo a los Testers es el
Analista Funcional. Y algo muy muy importante que SIEMPRE tenemos que tener en
cuenta es que es nuestro documento de referencia. ¿Qué significa esto? Que cada vez
que probemos un software, no podemos hacer lo que queramos, sino que tenemos que
probar que el software cumpla con los puntos detallados en la Especificación.
Volviendo a Celfar…
Bueno, habiendo hecho esta introducción sobre las Especificaciones, los desafiamos a
que lean bien despacito y prestando mucha atención la especificación de Celfar y ver qué
cosas se cumplen y cuáles no en la Versión 1 del software. Pueden hacer una listita en
una hoja de papel con las cosas que creen que no se están cumpliendo.
Algo que NO tienen que hacer, aunque sabemos que puede ser tentador, es entrar
directamente a alguna de las versiones del software y empezar a probar sin haber
leído la Especificación antes. SIEMPRE SIEMPRE hay que leer la Especificación
primero.
http://www.nahual.com.ar/
*Faltaba "Pendiente de Cálculo" al inicio de la app.
*El resultado NO está dentro de un campo.
*Link "Celcius" no asociado.
*Mensajes diferentes a lo que dice la especificación.
Vimos juntos que podíamos clasificar estas diferencias como errores en la pantalla
(como dijo Dani "look&feel") y errores relacionados al funcionamiento de Celfar.
http://www.nahual.com.ar/
Recapitulando algunas definiciones...
Aplicación, Software: es un programa cualquiera. Como facebook, twitter.
Desarrollador: es la persona que construye el programa.
Analista: es la persona encargada de entender la necesidad y traducirla en un
documento.
Tester: la persona encargada de asegurar la calidad de una aplicación.
Especificación: es un documento que realiza el analista, donde describe el
programa y cómo funciona.
Navegador, Browser: son los programas que nos permiten entrar a Internet. Por
ejemplo Internet Explorer, Firefox, Chrome, Opera, Safari.
Versión: puede entenderse como un código de identificación del programa, que a
medida que se hacen cambios este código va incrementándose. En clase lo
definimos algo así como diferentes "niveles" del programa.
http://www.nahual.com.ar/