I certainly do agree about integration tests being important. I've also started moving towards using a live database for my tests. I set up a postgres database by copying over a master copy to a temporary directory and running a postgres daemon from there. It takes ~100ms and with fsync turned off it makes for snappy tests. If it starts getting to be slow I can always move it to a ramdisk.
Here's a library I wrote for golang which wraps it all up in a convenient package:
Here's a library I wrote for golang which wraps it all up in a convenient package:
https://github.com/surullabs/ghostgres