Hi Aidan,
I'm not entirely sure exactly what you are finding hard to test. It's hard to determine, since you've not included your current approach, or mention what is awful/hard to test. It would be preferably, if you would share some code. Perhaps, dropwizards can share their insights better.
Having said that, I will try to make assumptions, and answer your question.
If you want to check wether the factories/DBI are properly initialized you probably could write a one off test for that. If you want to test that JDBI is doing things right, your testing scope might be worth reconsideration. JDBI does have a fair amount of tests (
https://github.com/jdbi/jdbi/tree/master/src/test/java/org/skife/jdbi/v2). They may give you some inspiration.
If you want to test UserDAO, you can either create UserDAO yourself, or inject it in your test, and test operations as you would test any class. I would treat the tests as if I were testing the queries.
At some point, you have to treat JDBI as a service, and test what makes sense.
I hope I am able to address your concerns. If not, please clarify a bit further, and I can try and do a better job.
Cheers
Nasir