UnitTesting (which I assume you mean, rather than System, Integration, Regression testing etc. ) is usually done on the basis of one test per business method. What would happen is suppose you write a class called DoesSomething which has five public business methods then typically you'd have a TestDoesSomething which calls each method and verifies what they return is what is expected and they handle potential garbage data correctly.
Or is it sufficient to have println's in the actual methods of the class to confirm that what is expected is actually happening?
Normally no. You need tests which work on the basis of assertions. You need to programmatically check things are OK, since eyeballing output is a very fallable and timeconsumming test.
There is a lot more written about this in the Testing forum than is probably appropriate to repeat here. I'd recommend you have a trawl through that. I'd also recommend you look at JUnit a commonly used unit test framework. That site has links to a lot of resources on this subject.