1. A computer implemented method for automatically testing a graphical user interface (GUI), the method comprising: using, by a test module, an accessibility application programming interface (API) for analyzing a plurality of GUI elements of the GUI and for automatically identifying a plurality of GUI element features and a plurality of inter-GUI-element dependencies; using, by the test module, the plurality of identified GUI element features and the plurality of identified inter-GUI-element dependencies for automatically generating a graph of a plurality of nodes, wherein each node within the plurality of nodes represents a GUI element of the GUI and having assigned the plurality of identified GUI element features and the plurality of identified inter-GUI-element dependencies of the GUI element is represented by each node; traversing, by the test module, the generated graph, thereby automatically analyzing the plurality of identified GUI element features assigned to at least one of each currently accessed node and any child node or any sibling node of the currently analyzed node for identifying a plurality of GUI element patterns, wherein a GUI element pattern is a predefined set of one or more nodes having at least one of a plurality of assigned, predefined GUI element features and being a predefined set of two or more nodes representing a plurality of GUI elements linked to each other by a predefined functional dependency; in case a GUI element pattern was identified that matches a set of one or more nodes of the generated graph, automatically identifying, by the test module, one or more test routines associated with the identified GUI element pattern; automatically performing, by the test module, the one or more identified test routines on the plurality of analyzed GUI elements in the GUI represented by the plurality of nodes matching the GUI element pattern; wherein the plurality of GUI element features identified by the accessibility API of one or more nodes of the generated graph comprises a plurality of state information of one or more of the plurality of GUI elements of the generated graph; repeatedly generating, by the test module, a state value being indicative of a current state of the GUI and the plurality of GUI elements contained therein, wherein each state value is generated as a derivative of at least one GUI element feature of the plurality of identified GUI element features of each of the plurality of nodes of the generated graph, and wherein generating one of the state values at a particular time point further comprises: concatenating, by the test module, the plurality of identified GUI element features assigned to the one or more nodes of the generated graph at a particular time point for generating a concatenated value; computing a hash value of the generated concatenated value; and using the computed hash value as the state value of the GUI generated at the particular time point; and analyzing the generated state values to identify one or more malfunctioning GUI elements.