It is mostly for having a test case that is used to fill out a form.
The form may have a number of required fields and each field in the form will have a corresponding variable passed in.
If the user has not passed in a required field, the test will of course fail when the form is submitted, which is fine.
But if the required variables in the test case could be marked as ‘required’ when the variables are added in the usual way, it would just save us the time of writing an ‘if’ statement that checks if the variable has been passed in and the subdequent ‘markFailed’ etc.
The engine could pretty much take care of that failure/log message for us.
It is really only a question of speed of workflow for the people creating the tests. It is something I have seen in another test automation product that I thought was quite neat, but I can certainly work without it.
If such a think was added, I would expect it to default to false for backward compatibility etc.