Vous êtes sur la page 1sur 2

Pruebas de Software

Alumno:Prado Cussi Daniel Augusto


1. ¿ Porqué la refactorización de código esta relacionado con las pruebas estáticas de código ?
Para empezar se empezara aclarando algunos conceptos:
- Pruebas estáticas son pruebas que se realizan pero no hay necesidad de ejecutar el código de la
aplicación. (documentación).
- La refactorizacion es cambiar la estructura interna del código fuente sin modificar su
comportamiento, emitiendo un resultado igual , sin alteraciones.
Ahora la relación que entre pruebas estáticas y refactorizacion es :
-Ninguno de los dos altera el comportamiento de el código fuente .
-Para la refactorización se necesita pruebas unitarias , que pueden ser estáticas solo usando
resultados “esperados “ mas no los reales.

Explique
2. Porqué se dice que no debemos refactorizar código en las siguientes situaciones:
- Cuando la deuda técnica es muy alta.
Porque en este caso , con la deuda técnica, se tendría un costo extra por hacer un software muy
simple, que en muchos casos necesitaría mayor preparación y por consiguiente mas lineas de
código. No podriamos refactorizar porque el codigo de por si tiene errores que provocan un costo
mayor, y la unica solucion es agregar mas cuerpo al codigo, hacerlo mas complejo.
- Cuando no se usa un código.
Porque la refactorizacion esta orientado mas principalmente a codigo , a mejorar la eficiencia y el
costo , pero sin cambiar el resultado. Si no se usa codigo , solo documentacion , no tendria mucho
sentido .
- Cuando el fin del plazo de entrega está cerca.
Hay un dicho que dice : “Es fácil tener una idea complicada, es difícil ,muy difícil tener una idea
simple ”. La refactorizacion puede que tome incluso mas tiempo que crear un nuevo codigo antes de
la entrega de el plazo final del trabajo.

3. Explique el uso de la técnica "Extract Class" en refactorización de código. De un ejemplo de su


uso.
La técnica extract class es una tecnica que consiste en asignar responsabilidades unitarias a cada
elemento o clase del codigo , evitando que una clase tenga sobrepeso con varios metodos y de esta
forma su proposito se vuelva mas explicito.
Ejem:
Persona
-------------
Nombre
CodigodeTelefono
Numerodetelefono
telefono
getnumerotelefono()

1. SOLUCION

Crea una nueva clase:

Telefono |
----------------------------
CodigodeTelefono |
NumerodeTelefono |
getnumerotelefono()

Y encapsular sus atributos , de esa forma se entiende mejor el código.

Vous aimerez peut-être aussi