Il y a deux façons que j'ai trouvées par essais et erreurs pour que l'opération de suppression fonctionne comme spécifié dans le problème.
Vous pouvez soit spécifier la collection à charger avec impatience
@OneToMany(mappedBy = "author", fetch = FetchType.EAGER)
Ou vous pouvez cascader l'opération de suppression
@OneToMany(mappedBy = "author", cascade = CascadeType.REMOVE)
Il s'agit de la configuration minimale dont vous aurez besoin pour que le test réussisse comme spécifié dans le problème.