I use min-max normalization for my training data, so each variable should have range, and then I use de-normalization for my test output value to compare the actual output value. My question is: 1. Does my output value should locate between minimum and maximum? 2. If there is an extra variable out of range, do I need to redo the model?
You should get the minimum and maximum from the training data alone, otherwise you're fooling yourself by letting the test data leak into the training data.
If you do that, then the range of the de-normalized estimates will not necessarily cover the range of the test points. You can have 'stranded' test points outside the normalization range. Paraphrasing your question 1: "Does my output value fall within min-max?" The answer is yes, and that may not be enough range to cover all the test points.
For question 2 it depends on what you want. You could choose a different normalization method which doesn't strand any of your test points. On the other hand, if you're getting a good estimate using min-max normalization, you could accept the stranded test data point errors just as we have to accept errors in estimating the other test points.