1. A method, implemented at least in part by a computing device, for software upgrade analysis, the method comprising: by the computing device: receiving a request to generate a test definition, the request comprising a selection of at least one object class of a plurality of available object classes; retrieving one or more application programming interface (API) calls from a plurality of API calls defined for the selected at least one object class, the one or more API calls being associated with one or more arguments; generating the test definition for the selected at least one object class, the test definition comprising the one or more API calls and at least one value for at least one argument of the one or more arguments; receiving an instance of the selected at least one object class; executing a first test on the instance of the selected at least one object class using the at least one value of the at least one argument by automatically calling the one or more API calls in the test definition within a software environment wherein the first test is run on the software environment prior to upgrading the software environment; subsequent to upgrading the software environment, executing a second test on the instance of the selected at least one object class using the at least one value of the at least one argument by automatically calling the one or more API calls within the upgraded software environment; comparing, for each of the one or more API calls associated with the test definition, the test results from the first test with the test results from the second test, wherein the comparing is done on an API-by-API basis; and generating a software upgrade report based on a comparison of test results from the first test and test results from the second test.