so

production and test database will be in data center
development will be in your shop

am I correct here?

And you have to sincronize test and production at real time? (I dont see much point if one is test only) If they have to be real time then your only choice would be replication but then again I think it's pretty stupid replicate two database in same building.
Anyway what do you guys do with test database? You guys using the application from your shop and connect to test database and insert data delete data etc? I think the main point of having a test database is testing application's functionality and not to see the real time data and that's why i said it's a bit stupid sincronize these database in real time, I mean you can still test the application with let's say 10 rows in a table, you still get the same result if there were 10 or 100000 rows... Do you see my point