1. A testing device, comprising: a transceiver connected to a terminal device, being configured to run a graphical user interface (GUI); a storage, being configured to store a testing program; and a processor electrically connected to the transceiver and the storage, being configured to run the testing program to start a recording procedure for executing the following steps of: detecting a plurality of actions generated in response to operations on the terminal device; detecting a foreground application of the GUI; reading a plurality of pieces of object information of the foreground application; determining that a first action of the actions is to execute a coordinate command, and recording an object property operation of the foreground application which corresponds to the coordinate command according to the object information; and determining that a second action of the actions is to execute a call command which switches the foreground application from a first program to a second program, and recording the call command; wherein the processor is further configured to stop the recording procedure to generate and store a script file and a reference log file into the storage, and the script file comprises the object property operation and the call command; wherein when the transceiver is disconnected from the terminal device and connected to another terminal device, the processor further runs the testing program to start a playback procedure for executing the following steps: analyzing the script file; reading the pieces of object information of the foreground application of another GUI run by the another terminal device; generating the coordinate command according to the pieces of object information and the object property operation; executing the coordinate command and the call command; generating a testing log file; and comparing the reference log file with the testing log file to generate a testing result.