The transaction isn't propagated like it was before your @Async.
@Async and @Transactional: not working
Your test could commit the data and delete it either side of the test, removing Spring's automated rollback inside test @Transactionals.
You could create a default-access method that the async method calls into, that your test could also call direct, though you would no longer be testing the Async behaviour.
There's likely a nicer spring implementation that supports what you need, making the transaction available but I don't have it.