“What Is The Importance Of A Test Environment”
This may seem like a really dumb question for some, but let me put it into context. I’m talking about the importance of the test environment relative to the Production environment.
Let me tell you a story….
I raised a bug the other day (with screenshots, I might add) raising the fact that Asian currency symbols were not being displayed & English text was not being translated.
This was the response (sensitive details removed) with a resolved –> wont fix status:
“[Generic Tester Login Name] please note this is a known issue, Chinese characters are not encrypted correctly in test and will always show as ? It is due to database encryption issue that we had for over 2 years now that cannot be solved easily. The issue is not on production and should not be raised again in test. Thank you”
This was like a red rag to a bull. It was late, the progress of work in the sprint was fubar & maybe I was a bit too snappy. Anyway, this was my response:
“please note this is a known issue,
Great – how are the plans to fix it going?
Chinese characters are not encrypted correctly in test and will always show as ?
Its not just the ? character, its the entire text (see attached asia-missing-translations-in-test.bmp)
It is due to to databse encryption issue that we had for over 2 years now that cannot be solved easily.
Oh, so the plans to fix it aren’t going well then?
The issue is not on production and should not be raised again in test.
No need to raise it again in test, I hate duplicate bugs as much as the next person.
I’m not satisfied with the resolution. You make it sound like the test environment is less important than the production environment.
How can we test translations in test please?
How can we be sure translations are not broken?
I would like to reopen this bug but your flow doesn’t appear to allow me to. Interesting.
I know there were several problems with that response, but there was 1 glaring piece of wrong which I only picked up on when I got home:
“You make it sound like the test environment is less important than the production environment.”
I cringe reading that line back. Its like some whinging teenager not getting their own way.
My response is so “Weinbergian” (can we use that term?) – As a Tester, the Test environment is as important to me as the Production environment.
To the Business (& in this case a 3rd party Developer) I can see how the Test environment may not be as important as the Production environment.
For example, the Business may see a Test environment mirroring the Production environment as an extravagant waste – how much money did the Test environment cost & how much money is it making us in return? (Test as cost center thinking)
Unfortunately calculating how much money the company could potentially lose through little or no testing is a much trickier challenge.
What I should have said was something along the lines of:
“It is important to have a Test environment which is very closely aligned to the Production environment to help ensure the observed behaviours of the features in test will hopefully be the same behaviours in Production.
We have some work related to Asian customers in progress & as such it is important for me to be able to see that text & currency symbols are translated in Test so at least I have the slightest confidence that they will also be translated in Production.”
For me, the Test environment is somewhere we can try out experiments in relative safety. If some of those experiments have detrimental impacts to the software &/or environments, well its great that we found problems in the safety of a Test environment.
Other thoughts I have are around maintenance of that Test environment – A poorly maintained environment is as bad as no environment.
Enough of me though, what do you guys think?
How important is the Test environment compared to the Production environment for you?
What tactics/approaches do you use for helping team members understand the importance of a well maintained Test environment?