Are there any guidelines for writing test-friendly Python code?
What I believe:

One method does one thing.
Don't use side-effects.

Any other suggestions?
Write methods that don't rely on other models or resources - if they need to access them, they should be passed in to the method.
Any tips on writing testing-friendly code?