¿Cuándo debe usar render y shallow en las pruebas de Enzyme / React?

antes de publicar esta pregunta, intenté buscar en sqa stackexchange pero no encontré ninguna publicación sobre shallow y renderizar allí, así que espero que alguien pueda ayudarme aquí.

¿Cuándo debo usar shallow y renderizar en las pruebas de componentes reactivos? Basado en los documentos de airbnb, he hecho algunas opiniones sobre la diferencia de los dos:

Dado que Shallow está probando componentescomo una unidad, por lo que debe usarse para componentes 'primarios'. (ej. Tablas, Envoltorios, etc.)

El renderizado es para componentes secundarios.

La razón por la que hice esta pregunta es porque me cuesta trabajo decidir cuál debo usar (aunque los documentos dicen que son muy similares)

Entonces, ¿cómo sé cuál usar en un escenario específico?