1. A system to test a device driver, the system comprising: a first memory device configured to store programming code of the device driver, the device driver providing an interface to a data manipulation device; a second memory device configured to store a test case to test the device driver, the device driver receiving version information specifying a targeted version of the data manipulation device to be targeted by the device driver from the test case or the device driver determining the targeted version of the data manipulation device independently of the test case; a third memory device configured to store a simulation including a version verification portion and a data manipulation portion, the data manipulation portion remaining unchanged for every version of the data manipulation device; and a processor configured to execute the test case on the device driver, execution of the test case being configured to include, based on a request by the device driver, execution of the version verification portion of the simulation and, based on a result of executing the version verification portion, execution of the data manipulation portion of the simulation.