Yesterday we had a very interesting discussion with my coworkers about unittests and whether they should be run also on production or just on staging. I don't have a clear-cut answer to this question, so I'm posting this question also here and maybe together we can come with some good answers. Personally, I'm leaning more towards negative answer to this question. My reasoning is that if you would have 10 production servers, you definitely wouldn't run unittests on all 10 of them, but you'd run unittests on one production server at most, since production servers are almost required by law to be exact copies of each other. I see a staging server as just another production server which should therefore be an exact copy of the production server. Our current situation where we don't trust our staging server to be a trustworthy simulation of production makes me think, that what we have is not actually a staging server but just another development server.