- Foco de la kata
- Lineamientos
- Descripción funcional del problema
- Respecto a las tecnologías
- Configuración de los ambientes de desarrollo
- Colaboradores
Agregar una nueva funcionanlidad a un código, que no cuenta con pruebas automatizadas, reduciendo el riego del impacto de la modificación.
Dividiremos la actividad en las siguientes fases:
- Escrituras de pruebas que incrementen la cobertura (characterization test)
- Agregar nueva característica (feature)
Un comerciante necesita conocer el margen de ganancia que tiene al momento de vender un producto (ej.: Mirinda de 600ml) que ha comprado a un precio X
vendiendolo a un precio Y
. La ganancia será igual a Y - X
Puede comprar un producto por:
- Unidad
- A granel (un pack).
Con la información anterior podríamos pensar en los casos de uso:
- Comerciante compra una gaseosa a 200, la vende a 350 y la renta es de 150
- Comerciante compra 100 gaseosa a 500, la vende a 100 y la renta es de 95
- Cliente paga con una
Vaca
y la ganancia es laVaca
A continuación listamos las tecnologías soportadas para esta kata:
Tecnología | Configuración del entorno de desarrollo |
---|---|
java | java + maven |
nodejs | nodejs + yarn + jest |
python | python 3.6+ |
kotlin | kotlin + gradle |
Debido a que cada tecnología tiene sus particularidades cada una de ellas tendrá una Configuración particular que podrá encontrarse en la carpeta específica para cada una de ellas.
NOTA: Si necesitan agregar una nueva tecnología puede hacer a través de un PR. Contactarse con diegosanchez para mayor información.