When my environment is set up well to do so, I usually write my tests as I code. Some come before I write the code, some come after. It really depends on how the flow goes. If I'm creating a new class I might:
Then everything from there is a back and forth of varying order. My flows have been getting more structured lately so I could see eventually doing strict TDD.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.