4. A method for testing software, comprising: at a software testing system running on one or more computing devices, receiving program state information containing a first program state and a second program state, wherein the first and second program states are associated with a software application; identifying a keyword that causes the software application to move from the first program state to the second program state; storing the keyword in a glossary, wherein the glossary contains information associated with the software application, and wherein the information associated with the software application includes keywords and program states associated with each of the keywords; producing a model of the software application's behavior, wherein the model of the software application's behavior specifies the first and second program states; verifying, via the model of the software application's behavior, whether an action corresponding to the keyword causes the software application to move from the first program state to the second program state; automatically generating a test script based on the keyword and the model of the software application's behavior; and executing the generated test script.
4. A method for testing software, comprising: at a software testing system running on one or more computing devices, receiving program state information containing a first program state and a second program state, wherein the first and second program states are associated with a software application; identifying a keyword that causes the software application to move from the first program state to the second program state; storing the keyword in a glossary, wherein the glossary contains information associated with the software application, and wherein the information associated with the software application includes keywords and program states associated with each of the keywords; producing a model of the software application's behavior, wherein the model of the software application's behavior specifies the first and second program states; verifying, via the model of the software application's behavior, whether an action corresponding to the keyword causes the software application to move from the first program state to the second program state; automatically generating a test script based on the keyword and the model of the software application's behavior; and executing the generated test script. 5. The method of claim 4 , further comprising: selecting a keyword based on a weight specified in the glossary.