1. A software product testing system, comprising: a knowledge base stored on a non-transitory computer readable medium comprising a data set that includes a plurality of testing parameters, possible actions associated with each testing parameter and, for each action, a plurality of language-specific format rules for inputs and outputs associated with the action; and a computing device operably connected to the non-transitory computer readable medium and configured to run: a test case generator that selects a test case in a target language for a software product based upon a testing parameter associated with the software product, wherein the testing parameter is an attribute of the test case that denotes which type of test is to be performed, the test case comprising: a selected action to be taken by a software product, wherein the selected action is selected from the possible actions stored in the knowledge base and based upon the testing parameter associated with the software product, an input to prompt the action, and an expected output that corresponds to the selected action and the input, wherein the expected output has a format corresponding to a language-specific format rule for the selected action in the target language and is determined by the selected action and the input to prompt the action, and a test verifier that determines whether an output generated by an application of the test case for the software product matches the expected output as defined by the testing parameter associated with the software product.