A testing device for evaluating operations of software installed in a mobile terminal, the testing device comprising: a scenario selecting unit configured to select a scenario that includes information for causing the mobile terminal to execute a function that should be operated by the mobile terminal, a scenario execution determining unit configured to determine whether the scenario selected by the scenario selecting unit is executable, a scenario execution unit configured to execute the scenario determined to be executable by the scenario execution determining unit, and a scenario execution result determining unit configured to determine whether an execution result of the scenario executed by the scenario execution unit is the same as a result expected beforehand, wherein the scenario execution determining unit determines whether the scenario selected by the scenario selecting unit is executable based on the execution result of the scenario executed by the scenario execution unit in the past; wherein the scenario execution determining unit is configured to determine that the scenario is not executable in the case where the scenario selected by the scenario selecting unit is a scenario whose number of times, the execution result of which executed in the past by the scenario execution unit was determined to be different from a result expected beforehand, is equal to or greater than a predefined threshold, the testing device further comprising: a first table configured to associate a scenario with a number of times when the execution result of the scenario was determined by the execution result determining unit to be different from a result expected beforehand, and a second table configured to associate a scenario whose number of times, the execution result of which executed by the scenario execution unit was determined to be different from a result expected beforehand, is equal to or greater than a predefined threshold with information indicating whether the scenario is executable or not, wherein the scenario execution result determining unit, in the case where the execution result of the scenario executed by the scenario execution unit is determined to be different from a result expected beforehand, is configured to reflect the execution result in the number of times, when the execution result of the scenario was determined to be different from a result expected beforehand, of the first table and to add the scenario to the second table as a scenario, the number of times the execution result of which was determined to be different from a result expected beforehand is equal to or more than the predetermined threshold value, and the scenario execution determining unit, referring to the second table, is configured to determine whether the scenario selected by the scenario selecting unit corresponds to a non-executable scenario. a scenario selecting unit configured to select a scenario that includes information for causing the mobile terminal to execute a function that should be operated by the mobile terminal, a scenario execution determining unit configured to determine whether the scenario selected by the scenario selecting unit is executable, a scenario execution unit configured to execute the scenario determined to be executable by the scenario execution determining unit, and a scenario execution result determining unit configured to determine whether an execution result of the scenario executed by the scenario execution unit is the same as a result expected beforehand, wherein the scenario execution determining unit determines whether the scenario selected by the scenario selecting unit is executable based on the execution result of the scenario executed by the scenario execution unit in the past; wherein the scenario execution determining unit is configured to determine that the scenario is not executable in the case where the scenario selected by the scenario selecting unit is a scenario whose number of times, the execution result of which executed in the past by the scenario execution unit was determined to be different from a result expected beforehand, is equal to or greater than a predefined threshold, a first table configured to associate a scenario with a number of times when the execution result of the scenario was determined by the execution result determining unit to be different from a result expected beforehand, and a second table configured to associate a scenario whose number of times, the execution result of which executed by the scenario execution unit was determined to be different from a result expected beforehand, is equal to or greater than a predefined threshold with information indicating whether the scenario is executable or not, wherein the scenario execution result determining unit, in the case where the execution result of the scenario executed by the scenario execution unit is determined to be different from a result expected beforehand, is configured to reflect the execution result in the number of times, when the execution result of the scenario was determined to be different from a result expected beforehand, of the first table and to add the scenario to the second table as a scenario, the number of times the execution result of which was determined to be different from a result expected beforehand is equal to or more than the predetermined threshold value, and the scenario execution determining unit, referring to the second table, is configured to determine whether the scenario selected by the scenario selecting unit corresponds to a non-executable scenario.