1. A system configured to provide automatic testing of a graphical user interface (GUI) having a plurality of GUI components, the system comprising: a plurality of user interface (UI) testing tools executing on a computer system, wherein each of the plurality of UI testing tools is configured to interact with one or more of the plurality of GUI components to perform automatic testing of the GUI; an abstract layer coupled with the plurality of UI testing tools, wherein the abstract layer is configured to provide a uniform interface for accessing the plurality of UI testing tools; and an automatic test platform coupled with the abstract layer and configured to issue a test command to the abstract layer simulating a user action performed on a GUI component of the plurality of GUI components, wherein the abstract layer is configured to identify the GUI component based on a first uniform identifier in the test command and utilize the first uniform identifier to communicate with one of the plurality of UI testing tools for interacting with the GUI component.