http://managementplaza.es/blog/historias-de-usuario-en-scrum-agile/
http://www.pmoinformatica.com/2012/10/plantillas-scrum-historias-de-usuario.html
Informática, Programación y Electrónica
Los números mágicos son números que aparecen en medio del código, y no se define el origen de ese valor en concreto. Se obvia un nombre que los describa. Si no conocemos la lógica de negocio, nos podemos bloquear pensando que significan esas cifras en medio de la nada.
El God Object un objeto muy grande, que conoce demasiado o tiene demasiadas responsabilidades distintas.
En este tipo de objetos , toda la funcionalidad del programa esta codificada él.
Usamos esta técnica ocasionalmente para entornos de programación ajustados, donde el aumento de rendimiento ligero y la centralización es más importante que el mantenimiento y la elegancia de programación.
Crear un God Object se le considera una mala práctica de programación. Es un ejemplo de un antipatrón de diseño. Se le conoce también como el anti-pattern. Contradice y viola todas las reglas de diseño y código limpio.
El principal problema de este tipo de objecto es que nuestro código se volverá débil e inestable. Cualquier cambio en él, podrían suponer la aparición de errores o comportamientos inesperados. Además, se haría muy complejo su mantenimiento a largo plazo.
La solución para que podamos deshacernos de este tipo de objecto es que refactorizar el God Object en varios objectos lo más independientes posibles unos de otros.
Vamos a ver que pasos hay que seguir para aplicar la metodología TDD a nuestro proyecto.
Continuar leyendo «Pasos para Aplicar TDD en nuestros proyectos»
En el software los nombres son omnipresentes, los usamos constantemente, por ello debemos hacerlo correctamente.
En esta entrada hablaremos de la composición de un test en TDD, y los métodos que suelen usarse en ellos.
Continuar leyendo «Composición de un Test en TDD y sus métodos»
Crear fichero package.json:
npm init // tipo cuestionario npm init --yes //crea todo por defecto
Instalar jest vía npm:
npm install --save-dev jest
Añadir a package.json:
{ "scripts": { "test": "jest" } }
**Si queremos que este fijo abierto el servicio, lo añadimos de la siguiente manera:
{ "scripts": { "test": "jest --watch" } }
**»test»: «jest –watchAll» –>sin git
Con esta mejora, ya no tenemos que estar lanzando el test cada vez, si no cada vez que guardemos, nos lo lanzará.
Añadir también esto al package.json si vamos a usar jsdom,
"jest": { "verbose": true, "testURL": "http://localhost/" },
https://github.com/jsdom/jsdom/issues/2304
si no dará el siguiente error:
SecurityError: localStorage is not available for opaque origins at Window.get localStorage [as localStorage] (node_modules/jsdom/lib/jsdom/browser/Window.js:257:15) at Array.forEach (<anonymous>)
Vista final del package.json:
Crear carpeta test y dentro el archivo spec.js con el siguiente código de ejemplo:
describe("test de prueba", function () { it("verdadero es verdadero", function () { expect(true).toBeTruthy(); }); });
**Matchers de Jest para realizar los test
Iniciar el test:
npm test
Debería salir una respuesta así, que nos confirma que esta pasando el test:
Links: Documentación Oficial Jest
mkdir my-proyect/jasmine
unzip jasmine-standalone-{#.#.#}.zip
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-{#.#.#}/jasmine_favicon.png"> <link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-{#.#.#}/jasmine.css"> <script type="text/javascript" src="jasmine/lib/jasmine-{#.#.#}/jasmine.js"></script> <script type="text/javascript" src="jasmine/lib/jasmine-{#.#.#}/jasmine-html.js"></script> <script type="text/javascript" src="jasmine/lib/jasmine-{#.#.#}/boot.js"></script>
*Nota: Donde están los {#.#.#} cambiarlo por la versión que hayamos descargado, por ejemplo 3.1.0
** Se nos quedan dos index.html, uno para los test y otro el index de la aplicación. En este caso se metio en la carpeta test.
En el archivo index.spec.js pondremos nuestros test