Camilo Martínez
Es un error capital teorizar antes de tener datos. Sin darse cuenta uno empieza a deformar los hechos para que se adapten a las teorías, en lugar de adaptar las teorías a los hechos.
Sherlock Holmes
Escándalo en Bohemia
Arthur Conan Doyle (1891)
10030
130
130
30
100
+
-
👍
👦
👨🦳
Don Pedro, buenos días
2 kg de papas + 1 lb de azucar
Son $3.500
👦
¿Tiene devuelta de $10.000?
👨🦳
Le recibo 10.000
$500 para $4.000
$1000 para $5000
y 5 para 10
Que tenga buen día
👽
3.500
500
4.000
1.000
5.000
5.000
10.000
+
👍
+
+
Una prueba unitaria (o prueba de componente) es un trozo de código (método o función) diseñado para comprobar que el código principal está funcionando como esperábamos.
Hay varias convenciones de nombrado, todas con sus cosas positivas y negativas, lo importante es elegir una y seguirla.
Al igual que nombrar una variable, lo que marca la diferencia es que el nombre de la prueba te ayude a identificar fácilmente lo que esta probando y el resultado esperado. Así que no importa que sea "demasiado" grande.
Eso si, se recomienda escribirlas en inglés al igual que el código.
Method/Component:
should expected behavior when state under test
describe('Method or <Component/>', () => {
it('should render the component when start', () => {
...
})
it('should throw and exception when the account is not valid', () => {
...
})
it('should have a list of 10 product when select sports section', () => {
...
})
}
👎Lo malo:
👍Lo bueno:
React Testing Library:
es un set de utilidades de testing simple y completo que promueve las buenas prácticas del testing. Es una ayuda para testear User Interfaces de forma centrada en el usuario.
- kentcdodds.com
👎No:
👍Si:
🔢Multiple
getAllBy...
queryAllBy...
findAllBy...
1️⃣Single
getBy...
queryBy...
findBy...
Suffix
...Role
...LabelText
...PlaceHolderText
...Text
...DisplayValue
...AltText
...Title
...TestId
Prioridad Recomendada
getByRole
findAllByTitle
📦
Property Drilling: es un término para describir cuando se pasan props múltiples niveles a un componente anidado, a través de componentes que no lo necesitan.
- kentcdodds.com
Composición:
Diseñar tus componentes pensando en lo que hacen
Herencia:
Diseñar tus componentes pensando en lo que son
🐶🤖
🍚🔊🧽
React: Composition vs Inheritance
npm install
npm run dev