MS SQL 2008 R2 - How to use a production database through dev/test environments or how to copy a SQL schema and all its data to another
Consider also replication. You can replicate only your tables so that you don't override any stored procedures or functions that the developers are working on. You can set up a publisher on production and 2 subscribers: one on TST and one on DEV. 

It's almost real time and very suitable for scenarios like yours. I always try to go for replication instead of anything else because in a stable environment you set it up and forget it's there while saving network bandwidth and unnecessary data copy. (with backup and restore you basically [copy prod], [delete tst/dev], [paste prod in dev/tst] - 90% the same data everyday) 

Downsides: 


it's a bit of trouble until you learn to work with it
it will take some network bandwidth during the day to send your
transactions from the publisher (prod in your case) to the subscriber
(or subscribers in your case: dev and tst).
it will eat up a lot of network bandwidth, SQL Server memory and disk I/O when you initially set it up and this will repeat if and every time you need to reinitialize the replication. You can also set up replication from backup and that goes faster when you initially set it up and if you ever reinitialize.


More documentation about replication here.