I know that executing with a complex boolean expression, due to short circuit evaluation some atomic conditions are unvisited/not-tested/not-executed for both true and false value. Actually compiler ignores them to compute, by thinking that they are no more useful to compute. But, what if compiler ignores these atomic conditions in a boolean expression, at this point what will be the condition coverage? Can we say that those skipped or ignored atomic conditions will count in final condition coverage? If these conditions will counted in condition coverage then why those conditions  have not generated test input values for their variable through test case generator. If all atomic conditions may not get visited, it means it will highly affect on MC/DC. Because the essential criterion for MC/DC is to invoke and check all atomic conditions at least once for true and false value. Which is not exactly happening due to short-circuiting evaluation? Please post your thoughts with example and references. I will appreciate  this discussion. Thanks!!

Similar questions and discussions