martes, 16 de octubre de 2007

Tratamiento de errores en JavaScript

En muchas ocasiones nuestros programas en javascript fallan y generan indeseables mensajes de error, además es idóneo tener un mecanismo para poder manejar estos eventos. Para ello tenemos dos herramientas por un lado el evento onerror por otro lado la instrucción try...catch.

Estas estructuras son válidas desde las siguientes versiones de navegadores: IE5+, Mozilla 1.0, y Netscape 6. Así que su ámbito es lo suficientemente amplio como para poder implementarlo sin miedo.

La instrucción try...catch tiene la siguiente forma:

try
{
//Código que se ejecuta y que es posible que falle.
}
catch(err)
{
//Código para poder controlar el error.
}


El parámetro err de catch contiene una descripción del error. De manera que si imprimimos err.description tendremos una descripción.
Si necesitamos manejar varios posibles errores podemos hacer uso de la instrucción throw(exception). El código resultante tendría la siguiente forma:


try
{
if(x>10)
throw "Err1"
else
throw "Err2"
}
catch(err)
{
if (err == "Err1")
alert("Error 1");
if (err == "Err2")
alert("Error 2");
}


Para el manejo de onerror nada mejor que un ejemplo:

window.onerror= manejador;
function manejador(msj,url,linea)
{
var texto="Se ha producido el siguiente error:\n";
texto+= msj + "\n";
texto+="(URL: " + url + ". Línea " + linea + ")";
alert(texto);
return true;
}

Como vemos para el evento onerror del objeto window se le asigna una función que recibe tres parámetros, 'msj' mensaje del error, 'url' donde se produce el error y 'linea' que es la línea en la que se produce. Es el tipo de información 'amable' que nos proporciona cualquier navegador.

Más información en:
http://www.w3schools.com/js/js_try_catch.asp

Definiciones de Calidad ISO 8402

Calidad.
"Conjunto de propiedades y de características de un producto o servicio, que le confieren su aptitud para satisfacer unas necesidades explícitas e implícitas."

Control de calidad.
"Conjunto de técnicas y actividades de carácter operativo, utilizadas para verificar los requerimientos relativos a la calidad del producto o servicio."

Garantía de calidad.
"Conjunto de acciones planificadas y sistemáticas necesarias para proporcionar la confianza adecuada de que un producto o servicio satisfará los requerimientos dados sobre calidad."


La norma ISO 8402, 1994 define el vocabulario referido a la calidad.