Clase 25 de agosto Decisiones: - validacione v alidacioness - casos de prueba
Clases de equivalencias:
- Son los conjuntos de estados (válidos o no) para las condiciones de entrada. Condiciones de entrada: - valor numérico - rango de valores - un miembro en un conjunto - un valor booleano
Valor numérico - Si una condición de entrada especifica un número, un valor, se define una clase de equivalencia valida y una inválida (pueden ser 2 válidas también). Miembro en un conjunto: - Si una condición de entrada especifica un miembro de un conjunto con comportamiento distinto, se define una condición valida y una invalida. Rango de valores: - Si una condición de entrada especifica un rango, se propone definir una clase de equivalencia valida y 2 inválidas. Condición booleana (si o no). - Si es booleana, se define una clase de equivalencia valida y una inválida).
Por tanto podemos entender que la clase de equivalencia representa el conjunto de estados válidos y no válidos para una condición de entrada.
Ejemplo:
Considérese una aplicación bancaria, donde el usuario puede conectarse al banco por Internet y realizar una serie de operaciones bancarias. Una vez accedido al banco con las consiguientes medidas de seguridad (clave de acceso y demás), la información de entrada del procedimiento que gestiona las operaciones concretas a realizar por el usuario u suario requiere la siguiente entrada:
- Código del banco. En blanco o número de tres dígitos. En este último caso, el primero de los tiene que ser mayor que 1. - Código de sucursal. Un número de cuatro dígitos. El primero de ellos mayor de 0. - Número de cuenta. Número de cinco dígitos. - Clave personal. Valor alfanumérico de cinco posiciones. - Orden. Este valor se introducirá según la orden que se desee realizar. Puede estar en blanco o ser una de las dos cadenas siguientes: o “Talonario” o “Movimientos” En el primer caso el usuario recibirá un talonario de cheques, mientras que en el segundo recibirá los movimientos del mes en curso. Si este código está en blanco, el usuario recibirá los dos documentos. Clases de Equivalencia Condición de Entrada Código banco
Código sucursal Nº Cuenta
Tipo
Clase Equivalencia Válida
Clase Equivalencia No Válida
- Lógica (puede estar o no) - Si está, es Rango Rango
1: En blanco 2: 100<= Código banco <= 999
3: Un valor no numérico 4: Código banco < 100 5: Código banco > 999
6: 1000 <= Código sucursal <=9999 9: Cualquier número de cinco dígitos
7: Código sucursal < 1000 8: Código sucursal > 9999 10: Número de más de cinco dígitos 11: Número de menos de cinco dígitos 13: Cadena de menos de cinco posiciones 14: Cadena de más de cinco posiciones 18: Cadena distinto de blanco y de las válidas 19: Cadena distinta de Talonario y de cadenas válidas 20: Cadena distinta de Movimiento y de cadenas válidas
Valor
Clave
Valor
12: Cualquier cadena de caracteres alfanuméricos de 5 posiciones
Orden
Conjunto, con comportamiento distinto
15: “” 16: “Talonario” 17: “Movimientos”
Casos de prueba:
Se escriben los casos de prueba tal que cubran la mayor cantidad de clases de equivalencia válidas. (Podría escribirse sólo uno que cubriera todo todas las cev.) Se escribe un caso de prueba por cada clase de equivalencia inválido
Casos de Prueba: Caso 1
Clase de equivalencia 1, 6a, 9a, 12a, 15
Print document
In order to print this document from Scribd, you'll Banco Sucursal Cuenta Clave Orden first need to download it.
1000
00000 Cancel
2
2a, 6b, 9b, 12b, 16
100
9999
3
2b, 6, 9, 12, 17
999
1001
4
3, 6, 9, 12, 15
30A
1989
5
4, 6, 9, 12, 15
99
1989
6
5, 6, 9, 12, 15
1000
1989
7
1, 7, 9, 12, 15
-
999
Resultado
00000 “” “Talonario” Envío de talonario Download And Print 99999 zzzzz “Movimientos” Envío de movimientos 12345 Hyu56 " " Envió de talonarios y movimientos 12347 Kuh98 “” Código banco erróneo 12347 Kuh98 “” Código banco erróneo 12347 Kuh98 “” Código banco erróneo 12347 Kuh98 “” Código sucursal erróneo
Problema
La forma de calcular el valor de un pasaje para ir de un lugar a otro en un taxi es en función de la distancia recorrida. De esta forma actualmente se cobra alrededor de $80 por cada 200mts. Se necesita un algoritmo que permita calcular el valor que debe pagar un pasajero cuando viaja una cantidad determinada de kilómetros. No olvide considerar el concepto de bajada de bandera, que corresponde a la tarifa mínima que se cobra, y que tienen valor de $400, para los recorridos de 1 kilómetro.
Análisis de datos entrada: dis : distancia recorrida, en metros
Print document
Condiciones de Entrada – Clases de Equivalencia In order to print this document from Scribd, you'll Clase Equivalencia Clase Equivalencia No first need to download it.
Condición de Entrada
Tipo
dis
1. 0
Válida
Válida
4. dis<=0 5. dis<=0 (ya está) 6. dis>=400 y que no sean valores válidos (no hay) 7. dis<400 y que no sean valores válidos: serían dis<=0,(ya está)
Casos de prueba: Caso 1
Clase de equivalencia 1,2
2 3
3 4
dis
Resultado
200 800 -50
$ 400 $ 800 no existe viaje
Problema
Don Pepe quiere invertir la plata que le regalaron para su cumpleaños plantando sandías en un terreno que tiene en Paine. Sin embargo, no está seguro de si le alcanza el dinero pues es la primera vez que se incursiona en este tipo de negocio. Lo único que sabe es que cuesta $2.500 por metro cuadrado plantar las semillas. Además, ni siquiera está seguro de cuántos metros cuadrados tiene su terreno. Lo que sí sabe es que el terreno es triangular, y conoce la longitud de los lados. ¿Cómo puede hacer don Pepe para saber la cantidad de dinero que necesita?
clase 26 de Agosto de 2008 Decisiones - ¿anidar o no? - independencia de las condiciones
Problema
Se requiere construir una calculadora de complejos. La calculadora debe permitir sumar, restar, multiplicar y dividir complejos y expresar su resultado en notación compleja. (a+bi) Utilice un menú para escoger la operación a realizar.
Los valores no se intersectan, por lo que puedo hacer las condiciones anidadas o no. In order to print this document from Scribd, you'll first need to download it.
Print document
Problema:
Cancel
Download And Print
Se requiere evaluar la siguiente función matemática definida por tramos:
Los tramos no se intersectan, por lo que puedo hacer las condiciones anidadas o no. - if (0<=x<2,5) - if (2,5<=x<4,7)
o - if (0<=x<2,5) else if (2,5