1. A method for testing a command line interface of a software product, the method including the steps of: providing a definition of a set of commands of the interface, each command requiring a set of arguments each one having a set of properties; providing a definition of a set of allowable conditions and non-allowable conditions of each property; selecting a value for an accuracy level parameter thereby setting an accuracy level, the value being one of (i) a predefined value and (ii) a custom value, the accuracy level causing a selection of a subset of conditions; generating a set of test scenarios including the invocation of a subset of commands with the arguments thereof assigned according to selected subset of conditions, wherein assigning the arguments according to the selected subset of conditions includes selecting a particular value for a property of an argument from the set of properties corresponding to the argument; generating a set of test cases by associating an expected result to each test scenario; and causing the execution of the test cases.