Getting back to the original topic...
I would recommend first taking a look at how the current tests are built (via autoconf/automake) in src/test. There are several surfaces to test, RPC, REST, P2P, internal unit tests, and more. Then, Travis applies a second level of testing via the bitcoinj-based regression tests.
Some automated tests that operate at the Qt level would be interesting. In general, the current tests only scratch the surface of what Needs To Be Tested... but part of figuring out a good test is (a) knowing bitcoin and (b) knowing the current test regimes.