Just curious:
When you release software builds to Q/A, do you prefer to always use the "RELEASE" version, or do you sometimes use the DEBUG version?
Here's my conundrum: We like to use Asserts to trap for conditions that should never happen.
On the one hand, it might be useful for Q/A to test our software with the Assertions enabled, so that if they can create a scenario that triggers an assertion, they can report it to us.
On the other hand, there is always the risk that a developer has coded an assertion in a way such that it changes the behavior of the code. In that case, Q/A should be testing the a build with Assertions disabled.
To date, we have always had Q/A operating on our Relesae builds, as that was the code that would ship. However, I am thinking about trying a pattern where our really early releases to Q/A would go out with assertions enabled. Then as we get closer to shipping, we will notify them that their builds have assertions disabled.
What do you guys think?