1. A method for testing a software program, comprising: creating a behavioral model of the software program using branches, decisions, and options; generating a test case from the behavioral model; executing the test case on the software program; and analyzing an output of the executed test case to determine a validity of the software program.