It's been awhile, but I've looked at a few.
utPLSQL seemed, to me, to be more work than I wanted to do. It's been awhile since I've looked, but I think someone worked on a gui for it that looked promising.
I liked Quest Code Tester a lot, but it is expensive. It is easy to learn, has a nice interface, handles lots of different kinds of tests. The Freeware version is crippled too much to be useful in my opinion. It's not integrated with PL/SQL Developer either.
I use the Test Manager that comes with PL/SQL Developer. You're right - It is limited, so I ended up writing custom stuff to fill in some things I wish it had. I wrote a program to create blank test scripts for each of the public procedures in a package so I don't have to right click all of them to make a test script. Another program copies the private procedures/functions to be public so I can test them. Another copies tables so I can see what is in global temporary tables for the session. Stuff like that. Comparing collections that are inputs or outputs of a function is still difficult, because I haven't found a good way to automatically create the test script.