I'm a "gradually improving" newbie developer and currently have a fairly blasé and ad-hoc approach to testing. Having done a bit of reading, it seems that the next thing to learn is unit testing. However, although I get the principle (ensuring that code changes don't break the overall code), I don't really understand how unit testing is done - especially around unit testing frameworks.
If you're writing your own applications at home, do you use unit testing? If so, how do you do it? Is this just a list of tests and values to use in those tests, or do you employ a more automated method? (Any references to how to do this in python will be given extra points).